/* ==========================================================================
   ACTAX CLOUD Design System
   ========================================================================== */

:root {
	--primary-navy: #062d5b;
	--secondary-navy: #0b3b70;
	--brand-green: #55bd3a;
	--brand-green-dark: #3da62a;
	--light-blue: #eaf6fb;
	--soft-background: #f7faff;
	--white: #ffffff;
	--text-dark: #15243a;
	--text-muted: #667085;
	--border-light: #e5eaf0;
	--sky-blue: #62b5e5;
	--ink: #071e3a;
	--shadow-soft: 0 18px 45px rgba(6, 45, 91, 0.11);
	--shadow-hover: 0 24px 60px rgba(6, 45, 91, 0.18);
	--top-bar-sticky-offset: 42px;
	--radius-sm: 8px;
	--radius-md: 8px;
	--radius-lg: 8px;
	--container: 1280px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--white);
	color: var(--text-dark);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.65;
	overflow-x: hidden;
}

body.menu-open {
	overflow: hidden;
}

img,
svg {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
}

button,
input {
	font: inherit;
}

button {
	cursor: pointer;
}

:focus-visible {
	outline: 3px solid rgba(85, 189, 58, 0.65);
	outline-offset: 3px;
}

.container {
	width: min(100% - 40px, var(--container));
	margin-inline: auto;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link:focus {
	top: 12px;
	left: 12px;
	z-index: 9999;
	width: auto;
	height: auto;
	padding: 10px 14px;
	background: var(--white);
	clip: auto;
	color: var(--primary-navy);
}

.section {
	padding: 100px 0;
}

.section-heading {
	max-width: 760px;
	margin: 0 auto 48px;
	text-align: center;
}

.section-heading--light {
	color: var(--white);
}

.section-eyebrow {
	margin: 0 0 12px;
	color: var(--brand-green);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.section-heading h2,
.split-content h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(2rem, 4vw, 3.25rem);
	line-height: 1.12;
	letter-spacing: 0;
}

.section-heading--light h2 {
	color: var(--white);
}

.split-content h2 span {
	color: var(--brand-green);
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 22px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-weight: 800;
	line-height: 1.1;
	transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, color 180ms ease;
}

.btn:hover,
.btn:focus-visible {
	transform: translateY(-2px);
}

.btn-primary {
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	box-shadow: 0 14px 30px rgba(85, 189, 58, 0.28);
}

.btn-outline {
	border-color: rgba(85, 189, 58, 0.45);
	background: var(--white);
	color: var(--primary-navy);
	box-shadow: var(--shadow-soft);
}

.btn-outline:hover {
	background: var(--brand-green);
	color: var(--white);
}

/* Header */

.site-header {
	position: sticky;
	top: calc(-1 * var(--top-bar-sticky-offset));
	z-index: 1000;
	background: var(--white);
	box-shadow: 0 0 0 rgba(6, 45, 91, 0);
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.site-header.is-sticky .main-header {
	box-shadow: 0 16px 38px rgba(6, 45, 91, 0.13);
}

.top-bar {
	background: #18377a;
	color: var(--white);
	font-size: 0.84rem;
	font-weight: 600;
}

.top-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 42px;
	gap: 32px;
}

.top-bar__contact,
.top-bar__social {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	min-width: 0;
	gap: 30px;
}

.top-bar__social {
	flex: 0 0 auto;
	flex-wrap: nowrap;
	justify-content: flex-end;
	gap: 10px;
}

.top-bar__link {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	gap: 8px;
	color: var(--white);
	line-height: 1.2;
	white-space: nowrap;
}

.top-bar__link span {
	min-width: 0;
}

.top-bar a {
	transition: color 160ms ease, opacity 160ms ease, transform 160ms ease;
}

.top-bar a:hover {
	color: var(--brand-green);
	opacity: 0.9;
}

.top-bar__icon,
.top-bar__social-icon {
	display: block;
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.top-bar__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.04);
	color: var(--white);
	font-size: 0.78rem;
	line-height: 1;
	text-decoration: none;
	transition: transform 220ms ease, background 220ms ease, border-color 220ms ease, color 220ms ease, opacity 160ms ease;
}

.top-bar__social a:hover,
.top-bar__social a:focus-visible {
	border-color: var(--brand-green);
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-1px);
	opacity: 1;
}

.top-bar__social-icon {
	width: 18px;
	height: 18px;
}

.footer-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 50%;
	color: var(--white);
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
}

.main-header {
	position: relative;
	z-index: 1000;
	border-bottom: 1px solid rgba(229, 234, 240, 0.86);
	background: rgba(255, 255, 255, 0.98);
	backdrop-filter: blur(12px);
}

.main-header__inner {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 80px;
	gap: 28px;
}

.site-branding {
	flex: 0 0 auto;
}

.nav-logo {
	display: block;
	align-items: center;
	width: 100%;
	height: auto;
	max-width: 100%;
}

.nav-logo img {
	width: auto;
	height: 100px;
	max-width: 100%;
	object-fit: contain;
}

.custom-logo-link img {
	max-width: 126px;
	max-height: 68px;
	object-fit: contain;
}

.brand-fallback {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--primary-navy);
}

.brand-mark {
	display: inline-grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(85, 189, 58, 0.95), rgba(98, 181, 229, 0.95)),
		var(--brand-green);
	color: var(--white);
	font-weight: 900;
}

.brand-copy {
	display: grid;
	line-height: 1.1;
}

.brand-name {
	color: var(--primary-navy);
	font-size: 1.15rem;
	font-weight: 900;
}

.brand-tagline {
	margin-top: 3px;
	color: var(--text-muted);
	font-size: 0.72rem;
	font-weight: 700;
}

.primary-navigation {
	margin-left: auto;
	margin-right: auto;
}

.primary-menu,
.footer-menu,
.footer-list {
	padding: 0;
	margin: 0;
	list-style: none;
}

.primary-menu {
	display: flex;
	align-items: center;
	gap: 31px;
}

.primary-navigation .primary-menu a {
	position: relative;
	color: var(--primary-navy);
	font-size: 0.88rem;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: uppercase;
	transition: color 170ms ease;
}

.primary-navigation .primary-menu a::after {
	position: absolute;
	right: 0;
	bottom: -8px;
	left: 0;
	height: 2px;
	background: var(--brand-green);
	content: "";
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 170ms ease;
}

.primary-navigation .primary-menu a:hover::after,
.primary-navigation .primary-menu .current-menu-item a::after,
.home .primary-navigation .primary-menu > .menu-item:first-child > a::after,
.front-page .primary-navigation .primary-menu > .menu-item:first-child > a::after {
	transform: scaleX(1);
}

.primary-navigation .primary-menu a:hover,
.primary-navigation .primary-menu .current-menu-item a,
.home .primary-navigation .primary-menu > .menu-item:first-child > a,
.front-page .primary-navigation .primary-menu > .menu-item:first-child > a {
	color: var(--brand-green);
}

.header-cta,
.mobile-menu-cta {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 20px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 10px;
	background:
		linear-gradient(135deg, rgba(82, 190, 60, 0.92), rgba(54, 166, 45, 0.82));
	background-size: 200% 200%;
	color: var(--white);
	font-size: 0.88rem;
	font-weight: 600;
	box-shadow:
		0 6px 20px rgba(40, 150, 50, 0.2),
		inset 0 1px 0 rgba(255, 255, 255, 0.35);
	text-shadow: 0 1px 1px rgba(6, 45, 91, 0.14);
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease,
		filter 0.3s ease,
		background 0.3s ease;
	white-space: nowrap;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	animation: ctaLiquidShift 7s ease-in-out infinite;
}

.header-cta::before,
.mobile-menu-cta::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
	content: "";
	opacity: 0.72;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.header-cta::after,
.mobile-menu-cta::after {
	position: absolute;
	top: -70%;
	bottom: -70%;
	left: -42%;
	width: 34%;
	background: linear-gradient(110deg, transparent, rgba(255, 255, 255, 0.24), transparent);
	content: "";
	filter: blur(10px);
	opacity: 0.55;
	pointer-events: none;
	transform: translateX(-140%) rotate(18deg);
	animation: ctaGlassShimmer 4.4s ease-in-out infinite;
}

.header-cta:hover,
.header-cta:focus-visible,
.mobile-menu-cta:hover,
.mobile-menu-cta:focus-visible {
	color: var(--white);
	filter: brightness(1.04);
	transform: translateY(-2px) scale(1.01);
	box-shadow:
		0 10px 26px rgba(40, 150, 50, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.header-cta:hover::before,
.header-cta:focus-visible::before,
.mobile-menu-cta:hover::before,
.mobile-menu-cta:focus-visible::before {
	opacity: 0.9;
}

.header-cta:active,
.mobile-menu-cta:active {
	transform: translateY(0) scale(0.98);
}

.mobile-menu-cta {
	display: none;
}

@keyframes ctaGlassShimmer {
	0% {
		transform: translateX(-140%) rotate(18deg);
	}

	48%,
	100% {
		transform: translateX(460%) rotate(18deg);
	}
}

@keyframes ctaLiquidShift {
	0%,
	100% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}
}

.menu-toggle {
	display: none;
	width: 46px;
	height: 46px;
	border: 1px solid var(--border-light);
	border-radius: 8px;
	background: var(--white);
}

.menu-toggle span {
	display: block;
	width: 20px;
	height: 2px;
	margin: 5px auto;
	background: var(--primary-navy);
	transition: transform 180ms ease, opacity 180ms ease;
}

.menu-toggle.is-active span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.menu-toggle.is-active span:nth-child(2) {
	opacity: 0;
}

.menu-toggle.is-active span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* Hero */

.hero-section {
	position: relative;
	color: var(--white);
}

.hero-slider {
	position: relative;
	min-height: clamp(600px, 45vw, 680px);
	overflow: hidden;
}

.hero-slides,
.hero-slide {
	position: absolute;
	inset: 0;
}

.hero-slide {
	display: grid;
	align-items: center;
	opacity: 0;
	pointer-events: none;
	transform: scale(1.015);
	transition: opacity 650ms ease, transform 650ms ease;
}

.hero-slide.is-active {
	opacity: 1;
	pointer-events: auto;
	transform: scale(1);
}

.hero-slide__visual {
	position: absolute;
	inset: 0;
	overflow: hidden;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.hero-slide--accounting .hero-slide__visual {
	background-image: url("../images/live/ChatGPT-Image-Aug-4-2026-01_36_50-PM.png");
}

.hero-slide--compliance .hero-slide__visual {
	background-image: url("../images/live/ChatGPT-Image-Aug-4-2026-07_37_09-PM.png");
}

.hero-slide--outsourcing .hero-slide__visual {
	background-image: url("../images/live/ChatGPT-Image-Aug-4-2026-07_39_26-PM.png");
}

.hero-slide__inner {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	min-height: clamp(600px, 45vw, 680px);
	padding-top: 54px;
	padding-bottom: 118px;
}

.hero-content {
	width: min(100%, 740px);
}

.hero-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 8px 13px;
	margin: 0 0 20px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: #cceefa;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.1;
	text-transform: uppercase;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.hero-eyebrow::before {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	content: "";
}

.hero-title {
	max-width: 760px;
	margin: 0;
	color: var(--white);
	font-size: clamp(48px, 4vw, 64px);
	font-weight: 800;
	line-height: 1.07;
	letter-spacing: 0;
}

.hero-title-green {
	display: inline;
	color: var(--brand-green);
}

.hero-copy {
	max-width: 560px;
	margin: 20px 0 30px;
	color: rgba(255, 255, 255, 0.86);
	font-size: clamp(1rem, 1.25vw, 1.12rem);
	line-height: 1.7;
}

.hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
}

.hero-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 22px;
	overflow: hidden;
	border-radius: 10px;
	color: var(--white);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.1;
	transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease, background 0.3s ease;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.hero-btn::before {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.04));
	content: "";
	opacity: 0.75;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.hero-btn::after {
	position: absolute;
	top: -80%;
	bottom: -80%;
	left: -48%;
	width: 32%;
	background: linear-gradient(110deg, transparent, rgba(255, 255, 255, 0.23), transparent);
	content: "";
	filter: blur(10px);
	opacity: 0.5;
	pointer-events: none;
	transform: translateX(-130%) rotate(18deg);
	animation: heroCtaShimmer 4.8s ease-in-out infinite;
}

.hero-btn:hover,
.hero-btn:focus-visible {
	color: var(--white);
	filter: brightness(1.04);
	transform: translateY(-2px);
}

.hero-btn:hover::before,
.hero-btn:focus-visible::before {
	opacity: 0.92;
}

.hero-btn:active {
	transform: translateY(0) scale(0.98);
}

.hero-btn--primary {
	border: 1px solid rgba(255, 255, 255, 0.35);
	background: linear-gradient(135deg, rgba(82, 190, 60, 0.94), rgba(54, 166, 45, 0.84));
	box-shadow:
		0 8px 24px rgba(40, 150, 50, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.38);
}

.hero-btn--secondary {
	border: 1px solid rgba(255, 255, 255, 0.35);
	background: rgba(255, 255, 255, 0.1);
	box-shadow:
		0 8px 24px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.hero-btn--secondary:hover,
.hero-btn--secondary:focus-visible {
	background: rgba(255, 255, 255, 0.16);
}

.hero-controls {
	position: absolute;
	top: 50%;
	right: 24px;
	left: 24px;
	z-index: 4;
	display: flex;
	justify-content: space-between;
	gap: 12px;
	pointer-events: none;
	transform: translateY(-50%);
}

.slider-arrow {
	display: inline-grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	color: var(--white);
	font-size: 1.8rem;
	line-height: 1;
	transition: transform 170ms ease, background 170ms ease, color 170ms ease;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	pointer-events: auto;
}

.slider-arrow:hover {
	transform: translateY(-2px);
	background: var(--brand-green);
}

.slider-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
}

.slider-dots button {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.35);
	transition: width 170ms ease, background 170ms ease;
}

.slider-dots button.is-active {
	width: 28px;
	border-radius: 999px;
	background: var(--brand-green);
}

.hero-dots {
	position: absolute;
	bottom: 124px;
	left: 50%;
	z-index: 4;
	transform: translateX(-50%);
}

.counter-wrap {
	position: relative;
	z-index: 6;
	margin-top: -80px;
}

.counter-panel {
	position: relative;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 16px;
	background:
		linear-gradient(135deg, rgba(6, 45, 91, 0.94), rgba(6, 35, 72, 0.88)),
		rgba(6, 45, 91, 0.9);
	padding: 12px 10px;
	box-shadow: 0 28px 70px rgba(6, 45, 91, 0.28);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.counter-panel::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--brand-green), rgba(98, 181, 229, 0.7), transparent);
	content: "";
}

.counter-item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	min-width: 0;
	padding: 24px 20px;
}

.counter-item:not(:last-child)::after {
	position: absolute;
	top: 24px;
	right: 0;
	bottom: 24px;
	width: 1px;
	background: rgba(255, 255, 255, 0.15);
	content: "";
}

.counter-icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.06);
	color: var(--brand-green);
	font-size: 1.9rem;
}

.counter-icon i {
	line-height: 1;
}

.counter-item strong {
	display: block;
	color: var(--white);
	font-size: clamp(1.7rem, 2.2vw, 1.95rem);
	font-weight: 700;
	line-height: 1;
}

.counter-plus {
	color: var(--brand-green);
}

.counter-item small {
	display: block;
	margin-top: 8px;
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.3;
	text-transform: uppercase;
}

@keyframes heroCtaShimmer {
	0% {
		transform: translateX(-130%) rotate(18deg);
	}

	45%,
	100% {
		transform: translateX(480%) rotate(18deg);
	}
}

/* About Hero */

.about-hero {
	position: relative;
	overflow: hidden;
	min-height: clamp(500px, 39vw, 560px);
	background-image:
		linear-gradient(90deg, rgba(3, 24, 50, 0.96) 0%, rgba(6, 45, 91, 0.9) 28%, rgba(6, 45, 91, 0.54) 52%, rgba(6, 45, 91, 0.16) 74%, rgba(6, 45, 91, 0.03) 100%),
		url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--white);
}

.about-hero::before {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(3, 24, 50, 0.12), rgba(3, 24, 50, 0.18));
	content: "";
	pointer-events: none;
}

.about-hero::after {
	position: absolute;
	top: 50%;
	left: max(20px, calc((100vw - var(--container)) / 2));
	width: 3px;
	height: 168px;
	border-radius: 999px;
	background: linear-gradient(180deg, transparent, var(--brand-green), transparent);
	box-shadow: 0 0 26px rgba(85, 189, 58, 0.4);
	content: "";
	transform: translateY(-50%);
}

.about-hero-inner {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	min-height: clamp(500px, 39vw, 560px);
	padding-top: clamp(72px, 7vw, 100px);
	padding-bottom: clamp(72px, 7vw, 100px);
}

.about-hero-content {
	width: min(100%, 920px);
	padding-left: 28px;
}

.about-hero-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 8px 14px;
	margin: 0 0 22px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.09);
	color: rgba(255, 255, 255, 0.88);
	font-size: 0.77rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.about-hero-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.about-hero-title {
	max-width: 920px;
	margin: 0;
	color: var(--white);
	font-size: clamp(46px, 4.6vw, 64px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.about-hero-title span {
	display: block;
}

.about-hero-title-white {
	color: var(--white);
	white-space: nowrap;
}

.about-hero-title-green {
	color: var(--brand-green);
}

.about-hero-description {
	max-width: 660px;
	margin: 22px 0 0;
	color: rgba(255, 255, 255, 0.84);
	font-size: clamp(1rem, 1.2vw, 1.12rem);
	line-height: 1.72;
}

.about-hero-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	max-width: 660px;
	margin-top: 20px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.5;
}

.about-hero-breadcrumb a {
	color: rgba(255, 255, 255, 0.84);
	transition: color 220ms ease, transform 220ms ease;
}

.about-hero-breadcrumb a:hover,
.about-hero-breadcrumb a:focus-visible {
	color: var(--brand-green);
	transform: translateY(-1px);
}

.about-hero-breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

/* About Company Intro */

.about-intro-section {
	position: relative;
	overflow: hidden;
	padding: clamp(86px, 8vw, 118px) 0;
	background:
		radial-gradient(circle at 88% 18%, rgba(85, 189, 58, 0.12), transparent 28%),
		linear-gradient(180deg, #ffffff 0%, #f6fafe 100%);
}

.about-intro-section::before {
	position: absolute;
	right: 5%;
	bottom: 12%;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.12);
	content: "";
	filter: blur(42px);
	opacity: 0.55;
	pointer-events: none;
}

.about-intro-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
	gap: clamp(46px, 5vw, 72px);
	align-items: center;
}

.about-intro-content {
	min-width: 0;
}

.about-intro-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px !important;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.82);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
}

.about-intro-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.about-intro-title {
	max-width: 680px;
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 4vw, 54px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.1;
}

.about-intro-title span {
	display: block;
}

.about-intro-title span:last-child {
	color: var(--brand-green);
}

.about-intro-lead {
	max-width: 650px;
	margin: 22px 0 34px;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.12vw, 1.08rem);
	line-height: 1.75;
}

.about-intro-points {
	display: grid;
}

.about-intro-point {
	position: relative;
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr) 42px;
	gap: 18px;
	align-items: start;
	padding: 24px 18px 24px 0;
	border-bottom: 1px solid rgba(6, 45, 91, 0.1);
	transition: background 260ms ease;
}

.about-intro-point:last-child {
	border-bottom: 0;
}

.about-intro-point__number {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1;
	transition: background 260ms ease, border-color 260ms ease, color 260ms ease, transform 260ms ease;
}

.about-intro-point__body {
	min-width: 0;
	transition: transform 260ms ease;
}

.about-intro-point h3 {
	margin: 0 0 8px;
	color: var(--primary-navy);
	font-size: 1rem;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.25;
	transition: color 260ms ease;
}

.about-intro-point p {
	margin: 0;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.about-intro-point > i {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: rgba(6, 45, 91, 0.05);
	color: rgba(6, 45, 91, 0.34);
	font-size: 1.05rem;
	transition: background 240ms ease, color 240ms ease, transform 240ms ease;
}

@media (hover: hover) {
	.about-intro-point:hover {
		background: rgba(255, 255, 255, 0.66);
	}

	.about-intro-point:hover .about-intro-point__number {
		border-color: rgba(85, 189, 58, 0.34);
		background: rgba(85, 189, 58, 0.16);
		color: var(--brand-green-dark);
		transform: translateX(4px);
	}

	.about-intro-point:hover .about-intro-point__body {
		transform: translateX(6px);
	}

	.about-intro-point:hover h3 {
		color: var(--brand-green-dark);
	}

	.about-intro-point:hover > i {
		background: rgba(85, 189, 58, 0.12);
		color: var(--brand-green-dark);
		transform: translateY(-2px);
	}
}

.about-intro-media {
	position: relative;
	min-width: 0;
}

.about-intro-image-wrap {
	position: relative;
	min-height: clamp(480px, 38vw, 560px);
	border-radius: 24px;
	box-shadow: 0 28px 70px rgba(6, 45, 91, 0.15);
}

.about-intro-image-wrap::before {
	position: absolute;
	inset: -16px auto auto -16px;
	z-index: -1;
	width: 42%;
	height: 34%;
	border-radius: 24px;
	background: linear-gradient(135deg, rgba(85, 189, 58, 0.16), rgba(98, 181, 229, 0.08));
	content: "";
}

.about-intro-image-wrap img {
	width: 100%;
	height: 100%;
	min-height: clamp(480px, 38vw, 560px);
	border-radius: 24px;
	object-fit: cover;
	object-position: center;
}

.about-intro-experience {
	position: absolute;
	bottom: 24px;
	left: 24px;
	display: grid;
	gap: 2px;
	min-width: 150px;
	padding: 16px 18px;
	border: 1px solid rgba(255, 255, 255, 0.78);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 16px 36px rgba(6, 45, 91, 0.18);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.about-intro-experience strong {
	color: var(--brand-green-dark);
	font-size: clamp(2rem, 3vw, 2.55rem);
	font-weight: 900;
	line-height: 1;
}

.about-intro-experience span {
	color: var(--primary-navy);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.25;
	text-transform: uppercase;
}

/* About Mission Vision Values */

.about-foundation-section {
	position: relative;
	overflow: hidden;
	padding: 0;
	background:
		radial-gradient(circle at 50% 46%, rgba(85, 189, 58, 0.11), transparent 29%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 48%, #f8fbff 100%);
}

.about-foundation-section::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(6, 45, 91, 0.06) 1px, transparent 1px);
	background-size: 24px 24px;
	content: "";
	opacity: 0.28;
	pointer-events: none;
}

.about-foundation-header {
	position: relative;
	z-index: 1;
	max-width: 800px;
	margin: 0 auto 34px;
	text-align: center;
}

.about-foundation-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px !important;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91) !important;
	font-size: 12px !important;
	font-style: normal !important;
	font-weight: 800 !important;
	line-height: 13px !important;
	text-transform: uppercase;
}

.about-foundation-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.about-foundation-title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(2.25rem, 3.1vw, 3rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.about-foundation-title span {
	display: block;
}

.about-foundation-title span:last-child {
	color: var(--brand-green);
}

.about-foundation-header > p {
	max-width: 760px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.2vw, 1.08rem);
	line-height: 1.75;
}

.about-foundation-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(22px, 2.2vw, 30px);
	align-items: stretch;
}

.about-foundation-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	padding: clamp(28px, 2.6vw, 36px);
	overflow: hidden;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 18px 45px rgba(6, 45, 91, 0.07);
	transition: transform 340ms ease, border-color 340ms ease, box-shadow 340ms ease, background 340ms ease;
}

.about-foundation-card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: linear-gradient(90deg, transparent, rgba(85, 189, 58, 0.78), transparent);
	content: "";
	opacity: 0;
	transition: opacity 340ms ease;
}

.about-foundation-card::after {
	position: absolute;
	right: -42px;
	bottom: -42px;
	width: 130px;
	height: 130px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.08);
	content: "";
	pointer-events: none;
}

.about-foundation-card--vision {
	background:
		linear-gradient(180deg, rgba(246, 255, 247, 0.96), rgba(255, 255, 255, 0.94)),
		rgba(255, 255, 255, 0.94);
	transform: translateY(-22px);
}

.about-foundation-card__top {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 28px;
}

.about-foundation-card__number {
	color: rgba(6, 45, 91, 0.26);
	font-size: 0.9rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	line-height: 1;
}

.about-foundation-card__icon {
	display: inline-grid;
	place-items: center;
	width: 56px;
	height: 56px;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	box-shadow: 0 0 0 8px rgba(85, 189, 58, 0.045);
	color: var(--brand-green-dark);
	font-size: 1.35rem;
	transition: transform 340ms ease, border-color 340ms ease, box-shadow 340ms ease, background 340ms ease;
}

.about-foundation-card h3 {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(1.35rem, 1.8vw, 1.65rem);
	font-weight: 800;
	line-height: 1.2;
}

.about-foundation-card__accent {
	position: relative;
	z-index: 1;
	width: 46px;
	height: 3px;
	margin: 16px 0 20px;
	border-radius: 999px;
	background: var(--brand-green);
}

.about-foundation-card p {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.7;
}

.about-foundation-card p + p {
	margin-top: 14px;
}

@media (hover: hover) {
	.about-foundation-card:hover {
		border-color: rgba(85, 189, 58, 0.32);
		box-shadow: 0 24px 58px rgba(6, 45, 91, 0.12);
		transform: translateY(-5px);
	}

	.about-foundation-card--vision:hover {
		transform: translateY(-27px);
	}

	.about-foundation-card:hover::before {
		opacity: 1;
	}

	.about-foundation-card:hover .about-foundation-card__icon {
		border-color: rgba(85, 189, 58, 0.44);
		background: rgba(85, 189, 58, 0.15);
		box-shadow: 0 0 0 10px rgba(85, 189, 58, 0.06);
		transform: scale(1.05);
	}
}

.about-foundation-trust {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 22px;
	width: min(100%, 900px);
	margin: 44px auto 0;
	padding: 16px 20px;
	border: 1px solid rgba(6, 45, 91, 0.08);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 14px 38px rgba(6, 45, 91, 0.06);
}

.about-foundation-trust span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--primary-navy);
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.2;
}

.about-foundation-trust i {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.12);
	color: var(--brand-green-dark);
	font-size: 0.72rem;
}

/* About Expertise Stats */

.about-expertise {
	position: relative;
	overflow: hidden;
	padding: clamp(72px, 6vw, 96px) 0;
	background:
		radial-gradient(circle at 22% 58%, rgba(85, 189, 58, 0.13), transparent 28%),
		radial-gradient(circle at 78% 48%, rgba(98, 181, 229, 0.13), transparent 30%),
		#f7faff;
}

.about-expertise::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(6, 45, 91, 0.05) 1px, transparent 1px);
	background-size: 26px 26px;
	content: "";
	opacity: 0.2;
	pointer-events: none;
}

.about-expertise__header {
	position: relative;
	z-index: 1;
	max-width: 820px;
	margin: 0 auto 44px;
	text-align: center;
}

.about-expertise__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px !important;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91) !important;
	font-size: 12px !important;
	font-style: normal !important;
	font-weight: 800 !important;
	line-height: 13px !important;
	text-transform: uppercase;
}

.about-expertise__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.about-expertise__title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(2.25rem, 3.1vw, 3rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.about-expertise__title span {
	display: block;
}

.about-expertise__title span:last-child {
	color: var(--brand-green);
}

.about-expertise__header > p {
	max-width: 760px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.2vw, 1.08rem);
	line-height: 1.75;
}

.about-expertise__stats {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(22px, 3vw, 44px);
	max-width: 1120px;
	margin: 0 auto;
}

.about-expertise__stats::before,
.about-expertise__stats::after {
	position: absolute;
	top: 85px;
	right: 9%;
	left: 9%;
	height: 2px;
	border-radius: 999px;
	content: "";
	pointer-events: none;
}

.about-expertise__stats::before {
	background: linear-gradient(90deg, transparent, rgba(6, 45, 91, 0.13), transparent);
}

.about-expertise__stats::after {
	width: 120px;
	background: linear-gradient(90deg, transparent, rgba(85, 189, 58, 0.44), transparent);
	opacity: 0.55;
	transform: translateX(-40%);
	animation: about-expertise-line 5.8s ease-in-out infinite;
}

.about-expertise__stat {
	position: relative;
	z-index: 1;
	min-width: 0;
	text-align: center;
}

.about-expertise__progress {
	position: relative;
	display: grid;
	place-items: center;
	width: clamp(150px, 13vw, 172px);
	aspect-ratio: 1;
	margin: 0 auto 18px;
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 50%, #ffffff 0 52%, rgba(255, 255, 255, 0.72) 53% 63%, transparent 64%),
		linear-gradient(145deg, rgba(255, 255, 255, 0.92), rgba(238, 248, 241, 0.76));
	box-shadow: 0 14px 36px rgba(6, 45, 91, 0.08);
	transition: transform 300ms ease, box-shadow 300ms ease;
}

.about-expertise__ring {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.about-expertise__ring-track,
.about-expertise__ring-value {
	fill: none;
	stroke-width: 11;
}

.about-expertise__ring-track {
	stroke: #dce9f3;
}

.about-expertise__ring-value {
	stroke: var(--brand-green);
	stroke-linecap: round;
	filter: drop-shadow(0 4px 8px rgba(85, 189, 58, 0.24));
	transition: stroke 300ms ease, filter 300ms ease;
}

.about-expertise__progress-center {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	gap: 7px;
	width: 104px;
	height: 104px;
	border: 1px solid rgba(85, 189, 58, 0.12);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: inset 0 0 0 7px rgba(247, 250, 255, 0.85);
}

.about-expertise__progress-center i {
	color: var(--brand-green);
	font-size: 0.96rem;
	opacity: 0.86;
	transition: transform 300ms ease;
}

.about-expertise__progress-center strong {
	color: var(--primary-navy);
	font-size: clamp(1.8rem, 2.5vw, 2.22rem);
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
}

.about-expertise__stat h3 {
	max-width: 150px;
	margin: 0 auto;
	color: var(--primary-navy);
	font-size: clamp(0.98rem, 1.2vw, 1.08rem);
	font-weight: 700;
	line-height: 1.3;
}

@media (hover: hover) {
	.about-expertise__stat:hover .about-expertise__progress {
		transform: translateY(-4px);
		box-shadow: 0 20px 48px rgba(6, 45, 91, 0.13);
	}

	.about-expertise__stat:hover .about-expertise__ring-value {
		stroke: #61d343;
		filter: drop-shadow(0 7px 12px rgba(85, 189, 58, 0.32));
	}

	.about-expertise__stat:hover .about-expertise__progress-center i {
		transform: scale(1.08);
	}
}

.about-expertise__trust {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: fit-content;
	max-width: min(100%, 1080px);
	margin: 42px auto 0;
	padding: 13px 20px;
	border: 1px solid rgba(85, 189, 58, 0.2);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 14px 36px rgba(6, 45, 91, 0.07);
	color: var(--primary-navy);
	font-size: clamp(0.95rem, 1.05vw, 1rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: center;
	white-space: nowrap;
}

.about-expertise__trust i {
	flex: 0 0 auto;
	color: var(--brand-green);
	font-size: 0.94rem;
}

@keyframes about-expertise-line {
	0% {
		left: 9%;
		transform: translateX(-70%);
	}

	50% {
		left: 91%;
		transform: translateX(-30%);
	}

	100% {
		left: 9%;
		transform: translateX(-70%);
	}
}

/* About Client Trust */

.about-client-trust {
	position: relative;
	overflow: hidden;
	padding: clamp(78px, 6vw, 108px) 0;
	background:
		radial-gradient(circle at 88% 16%, rgba(85, 189, 58, 0.16), transparent 26%),
		radial-gradient(circle at 8% 88%, rgba(98, 181, 229, 0.12), transparent 28%),
		var(--primary-navy);
	color: var(--white);
}

.about-client-trust::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
	background-size: 28px 28px;
	content: "";
	opacity: 0.16;
	pointer-events: none;
}

.about-client-trust__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(580px, 0.48fr) minmax(0, 0.52fr);
	gap: clamp(34px, 3.8vw, 54px);
	align-items: center;
}

.about-client-trust__content {
	max-width: 680px;
}

.about-client-trust__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.07);
	color: var(--white);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.about-client-trust__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 0 5px rgba(85, 189, 58, 0.14);
}

.about-client-trust__title {
	margin: 0;
	color: var(--white);
	font-size: clamp(44px, 3.6vw, 58px);
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: 0;
}

.about-client-trust__title span {
	display: block;
	white-space: nowrap;
}

.about-client-trust__title span:last-child {
	color: var(--brand-green);
}

.about-client-trust__metric {
	position: relative;
	margin: clamp(28px, 3vw, 38px) 0 22px;
	padding-left: 18px;
}

.about-client-trust__metric::before {
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 0;
	width: 4px;
	border-radius: 999px;
	background: var(--brand-green);
	content: "";
	box-shadow: 0 0 22px rgba(85, 189, 58, 0.42);
}

.about-client-trust__metric strong {
	display: block;
	color: var(--white);
	font-size: clamp(3.1rem, 5vw, 4.9rem);
	font-weight: 800;
	line-height: 0.95;
	letter-spacing: 0;
}

.about-client-trust__metric strong span {
	color: var(--brand-green);
}

.about-client-trust__metric > span {
	display: block;
	margin-top: 8px;
	color: rgba(255, 255, 255, 0.84);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: 0.08em;
}

.about-client-trust__description {
	max-width: 500px;
	margin: 0;
	color: rgba(255, 255, 255, 0.75);
	font-size: clamp(1rem, 1.12vw, 1.08rem);
	line-height: 1.78;
}

.about-client-trust__points {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 18px;
	margin-top: 24px;
}

.about-client-trust__points span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, 0.88);
	font-size: 0.93rem;
	font-weight: 700;
	line-height: 1.35;
}

.about-client-trust__points i {
	display: inline-grid;
	place-items: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.16);
	color: var(--brand-green);
	font-size: 0.7rem;
}

.about-client-trust__testimonial-wrap {
	position: relative;
	min-width: 0;
}

.about-client-trust__testimonial-wrap::before {
	position: absolute;
	top: 14px;
	right: -14px;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(85, 189, 58, 0.32);
	border-radius: 28px;
	content: "";
	opacity: 0.8;
	pointer-events: none;
}

.about-client-trust__testimonial {
	position: relative;
	z-index: 1;
	min-height: 430px;
	padding: clamp(32px, 4vw, 48px);
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.62);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 28px 70px rgba(0, 0, 0, 0.22);
	transition: transform 340ms ease, border-color 340ms ease, box-shadow 340ms ease;
}

.about-client-trust__quote {
	position: absolute;
	top: 28px;
	left: 30px;
	z-index: 1;
	color: rgba(85, 189, 58, 0.12);
	font-size: clamp(3.2rem, 5vw, 5.1rem);
	pointer-events: none;
}

.about-client-trust__slides {
	position: relative;
	z-index: 1;
	min-height: 330px;
}

.about-client-trust__slide {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 420ms ease, transform 420ms ease, visibility 420ms ease;
	visibility: hidden;
}

.about-client-trust__slide.is-active {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.about-client-trust__slide blockquote {
	margin: 0;
}

.about-client-trust__slide blockquote p {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(18px, 1.28vw, 20px);
	font-weight: 600;
	line-height: 1.6;
}

.about-client-trust__profile {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: clamp(28px, 3vw, 38px);
	padding-top: 24px;
	border-top: 1px solid rgba(6, 45, 91, 0.09);
}

.about-client-trust__person {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
}

.about-client-trust__avatar {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: linear-gradient(135deg, rgba(85, 189, 58, 0.16), rgba(6, 45, 91, 0.08));
	color: var(--primary-navy);
	font-size: 0.88rem;
	font-weight: 800;
}

.about-client-trust__person cite {
	display: grid;
	gap: 4px;
	font-style: normal;
}

.about-client-trust__person strong {
	color: var(--primary-navy);
	font-size: 1.02rem;
	font-weight: 800;
	line-height: 1.2;
}

.about-client-trust__person span {
	color: var(--text-muted);
	font-size: 0.9rem;
	line-height: 1.25;
}

.about-client-trust__rating {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--brand-green);
	font-size: 0.96rem;
	white-space: nowrap;
}

.about-client-trust__rating i {
	opacity: 0;
	transform: translateY(5px) scale(0.86);
	transition: opacity 360ms ease, transform 360ms ease;
}

.about-client-trust__testimonial-wrap.is-visible .about-client-trust__slide.is-active .about-client-trust__rating i {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.about-client-trust__rating i:nth-child(2) {
	transition-delay: 80ms;
}

.about-client-trust__rating i:nth-child(3) {
	transition-delay: 160ms;
}

.about-client-trust__rating i:nth-child(4) {
	transition-delay: 240ms;
}

.about-client-trust__rating i:nth-child(5) {
	transition-delay: 320ms;
}

.about-client-trust__badge {
	position: absolute;
	z-index: 2;
	top: -22px;
	right: 26px;
	display: grid;
	gap: 4px;
	min-width: 132px;
	padding: 12px 16px;
	border: 1px solid rgba(85, 189, 58, 0.2);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
	color: var(--primary-navy);
	font-size: 0.8rem;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
}

.about-client-trust__badge span {
	display: inline-flex;
	justify-content: center;
	gap: 3px;
	color: var(--brand-green);
	font-size: 0.72rem;
}

.about-client-trust__dots {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin-top: 22px;
}

.about-client-trust__dots button {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.42);
	cursor: pointer;
	transition: width 260ms ease, background 260ms ease, opacity 260ms ease;
}

.about-client-trust__dots button.is-active {
	width: 30px;
	background: var(--brand-green);
}

.about-client-trust__dots button:focus-visible {
	outline: 2px solid var(--brand-green);
	outline-offset: 4px;
}

@media (hover: hover) {
	.about-client-trust__testimonial:hover {
		transform: translateY(-4px);
		border-color: rgba(85, 189, 58, 0.38);
		box-shadow: 0 34px 82px rgba(0, 0, 0, 0.28);
	}
}

/* About Technology Tools */

.about-technology {
	position: relative;
	overflow: hidden;
	padding: clamp(86px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 50% 58%, rgba(85, 189, 58, 0.1), transparent 24%),
		linear-gradient(180deg, #f7faff 0%, #ffffff 52%, #f6fbff 100%);
}

.about-technology::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(6, 45, 91, 0.045) 1px, transparent 1px);
	background-size: 26px 26px;
	content: "";
	opacity: 0.24;
	pointer-events: none;
}

.about-technology__header {
	position: relative;
	z-index: 1;
	max-width: 850px;
	margin: 0 auto 42px;
	text-align: center;
}

.about-technology__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px !important;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.74);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91) !important;
	font-size: 12px !important;
	font-style: normal !important;
	font-weight: 800 !important;
	line-height: 13px !important;
	text-transform: uppercase;
}

.about-technology__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.about-technology__title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(2.3rem, 3.4vw, 3.15rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.about-technology__title span {
	display: block;
}

.about-technology__title span:last-child {
	color: var(--brand-green);
}

.about-technology__header > p {
	max-width: 760px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.18vw, 1.08rem);
	line-height: 1.75;
}

.about-technology__panel {
	position: relative;
	z-index: 1;
	max-width: 1180px;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid rgba(6, 45, 91, 0.08);
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 24px 70px rgba(6, 45, 91, 0.09);
}

.about-technology__glow {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 0 14px rgba(85, 189, 58, 0.08), 0 0 34px rgba(85, 189, 58, 0.34);
	opacity: 0.72;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.about-technology__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.about-technology__item {
	position: relative;
	display: grid;
	justify-items: center;
	min-width: 0;
	padding: clamp(34px, 4vw, 48px) 24px;
	text-align: center;
}

.about-technology__item:not(:last-child)::after {
	position: absolute;
	top: 26px;
	right: 0;
	bottom: 26px;
	width: 1px;
	background: linear-gradient(180deg, transparent, rgba(6, 45, 91, 0.12), transparent);
	content: "";
}

.about-technology__logo {
	display: grid;
	place-items: center;
	width: clamp(82px, 8vw, 104px);
	height: clamp(82px, 8vw, 104px);
	margin-bottom: 20px;
	border: 1px solid rgba(6, 45, 91, 0.08);
	border-radius: 24px;
	background:
		linear-gradient(180deg, #ffffff, #f8fbff),
		#ffffff;
	box-shadow: inset 0 0 0 8px rgba(247, 250, 255, 0.82), 0 14px 28px rgba(6, 45, 91, 0.07);
	transition: transform 300ms ease, box-shadow 300ms ease;
}

.about-technology__logo img {
	width: 72%;
	height: 72%;
	object-fit: contain;
	transition: transform 300ms ease;
}

.about-technology__item h3 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(1.08rem, 1.25vw, 1.2rem);
	font-weight: 800;
	line-height: 1.25;
	transition: color 300ms ease;
}

.about-technology__item p {
	margin: 8px 0 0;
	color: var(--text-muted);
	font-size: clamp(0.9rem, 1vw, 0.98rem);
	line-height: 1.45;
}

@media (hover: hover) {
	.about-technology__item:hover .about-technology__logo {
		box-shadow: inset 0 0 0 8px rgba(247, 250, 255, 0.86), 0 20px 38px rgba(6, 45, 91, 0.11);
		transform: translateY(-5px) scale(1.02);
	}

	.about-technology__item:hover .about-technology__logo img {
		transform: scale(1.04);
	}

	.about-technology__item:hover h3 {
		color: var(--brand-green);
	}
}

/* About Final CTA */

.about-final-cta {
	position: relative;
	padding: 0 0 clamp(72px, 6vw, 96px);
	overflow: hidden;
	background: linear-gradient(180deg, #f6fbff 0%, #ffffff 100%);
}

.about-final-cta__panel {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.65fr) minmax(300px, 0.35fr);
	gap: clamp(34px, 4vw, 56px);
	align-items: center;
	overflow: hidden;
	padding: clamp(34px, 5vw, 60px);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 30px;
	background:
		radial-gradient(circle at 87% 12%, rgba(85, 189, 58, 0.18), transparent 28%),
		radial-gradient(circle at 8% 88%, rgba(98, 181, 229, 0.14), transparent 30%),
		linear-gradient(135deg, rgba(6, 45, 91, 1), rgba(3, 24, 50, 0.98));
	box-shadow: 0 30px 80px rgba(6, 45, 91, 0.18);
	color: var(--white);
}

.about-final-cta__panel::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
	background-size: 28px 28px;
	content: "";
	opacity: 0.14;
	pointer-events: none;
}

.about-final-cta__panel::after {
	position: absolute;
	top: -84px;
	right: -72px;
	width: 210px;
	height: 210px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.18);
	content: "";
	filter: blur(12px);
	pointer-events: none;
}

.about-final-cta__content,
.about-final-cta__trust {
	position: relative;
	z-index: 1;
}

.about-final-cta__content {
	max-width: 760px;
}

.about-final-cta__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.07);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
	color: var(--white);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.about-final-cta__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 0 5px rgba(85, 189, 58, 0.14);
}

.about-final-cta__title {
	margin: 0;
	color: var(--white);
	font-size: clamp(2.45rem, 4.2vw, 4rem);
	font-weight: 800;
	line-height: 1.06;
	letter-spacing: 0;
}

.about-final-cta__title span {
	display: block;
}

.about-final-cta__title span:nth-child(2) {
	color: var(--brand-green);
}

.about-final-cta__content > p:not(.about-final-cta__eyebrow) {
	max-width: 680px;
	margin: 22px 0 0;
	color: rgba(255, 255, 255, 0.76);
	font-size: clamp(1rem, 1.16vw, 1.08rem);
	line-height: 1.75;
}

.about-final-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 30px;
}

.about-final-cta__button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 50px;
	padding: 14px 22px;
	overflow: hidden;
	border-radius: 8px;
	font-size: 0.94rem;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	transition: transform 280ms ease, border-color 280ms ease, background 280ms ease, box-shadow 280ms ease;
}

.about-final-cta__button i {
	font-size: 0.9rem;
	transition: transform 280ms ease;
}

.about-final-cta__button--primary {
	border: 1px solid rgba(85, 189, 58, 0.7);
	background: var(--brand-green);
	box-shadow: 0 16px 34px rgba(85, 189, 58, 0.26);
	color: var(--white);
}

.about-final-cta__button--secondary {
	border: 1px solid rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.07);
	color: var(--white);
}

.about-final-cta__button:hover,
.about-final-cta__button:focus-visible {
	transform: translateY(-3px);
}

.about-final-cta__button:hover i,
.about-final-cta__button:focus-visible i {
	transform: translateX(4px);
}

.about-final-cta__button--primary:hover,
.about-final-cta__button--primary:focus-visible {
	box-shadow: 0 22px 44px rgba(85, 189, 58, 0.34);
}

.about-final-cta__button--secondary:hover,
.about-final-cta__button--secondary:focus-visible {
	border-color: rgba(255, 255, 255, 0.34);
	background: rgba(255, 255, 255, 0.11);
}

.about-final-cta__trust {
	padding: clamp(24px, 3vw, 34px);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.06);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 22px 50px rgba(0, 0, 0, 0.12);
	backdrop-filter: blur(10px);
}

.about-final-cta__trust h3 {
	margin: 0;
	color: var(--white);
	font-size: clamp(1.15rem, 1.5vw, 1.35rem);
	font-weight: 800;
	line-height: 1.3;
}

.about-final-cta__trust ul {
	display: grid;
	gap: 13px;
	padding: 0;
	margin: 22px 0;
	list-style: none;
}

.about-final-cta__trust li,
.about-final-cta__trust p {
	display: flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.84);
	font-size: 0.94rem;
	font-weight: 700;
	line-height: 1.35;
}

.about-final-cta__trust p {
	margin: 0;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.72);
}

.about-final-cta__trust i {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.16);
	color: var(--brand-green);
	font-size: 0.74rem;
}

/* Services */

.services-section {
	position: relative;
	overflow: hidden;
	padding: 136px 0 112px;
	background: linear-gradient(180deg, #ffffff 0%, #f5f9fd 100%);
}

.services-section::before,
.services-section::after {
	position: absolute;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	content: "";
	filter: blur(80px);
	opacity: 0.22;
	pointer-events: none;
}

.services-section::before {
	top: 120px;
	left: -140px;
	background: rgba(85, 189, 58, 0.22);
}

.services-section::after {
	right: -150px;
	bottom: 140px;
	background: rgba(98, 181, 229, 0.24);
}

.services-heading {
	position: relative;
	z-index: 1;
	max-width: 800px;
	margin: 0 auto 34px;
	text-align: center;
}

.services-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.72);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.services-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.services-heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(2.35rem, 3.4vw, 3rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.services-heading h2 span {
	color: var(--brand-green);
}

.services-heading > p:not(.services-eyebrow) {
	max-width: 760px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.2vw, 1.08rem);
	line-height: 1.75;
}

.services-tabs {
	position: relative;
	z-index: 1;
}

.services-tablist {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max-content;
	max-width: 100%;
	margin: 0 auto 42px;
	padding: 5px;
	border: 1px solid rgba(6, 45, 91, 0.08);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 16px 42px rgba(6, 45, 91, 0.1);
}

.services-tab {
	min-height: 46px;
	padding: 12px 24px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--primary-navy);
	font-size: 0.84rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	transition: background 260ms ease, color 260ms ease, box-shadow 260ms ease, transform 260ms ease;
}

.services-tab:hover,
.services-tab:focus-visible {
	background: rgba(85, 189, 58, 0.09);
	color: var(--brand-green-dark);
}

.services-tab.is-active {
	background: linear-gradient(135deg, #58c83f, #3daa35);
	color: var(--white);
	box-shadow: 0 12px 28px rgba(85, 189, 58, 0.26);
}

.services-panel {
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 280ms ease, transform 280ms ease;
}

.services-panel.is-active {
	opacity: 1;
	transform: translateY(0);
}

.services-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.service-card {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-height: 292px;
	padding: 30px;
	border: 1px solid rgba(98, 181, 229, 0.18);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: var(--shadow-soft);
	transition: transform 300ms ease, box-shadow 300ms ease, border-color 300ms ease;
}

.service-card:hover {
	transform: translateY(-6px);
	border-color: rgba(85, 189, 58, 0.55);
	box-shadow: var(--shadow-hover);
}

.service-card__icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-bottom: 22px;
	border: 1px solid rgba(85, 189, 58, 0.16);
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(85, 189, 58, 0.12), rgba(98, 181, 229, 0.14));
	color: var(--brand-green-dark);
	font-size: 1.35rem;
	transition: background 300ms ease, color 300ms ease, border-color 300ms ease;
}

.service-card:hover .service-card__icon {
	border-color: rgba(85, 189, 58, 0.58);
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
}

.service-card h3 {
	margin: 0 0 13px;
	color: var(--primary-navy);
	font-size: clamp(1.18rem, 1.45vw, 1.35rem);
	font-weight: 700;
	line-height: 1.28;
}

.service-card p {
	margin: 0 0 22px;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.service-card__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: max-content;
	margin-top: auto;
	color: var(--brand-green-dark);
	font-weight: 700;
	line-height: 1.2;
}

.service-card__link span {
	display: inline-block;
	transition: transform 260ms ease;
}

.service-card:hover .service-card__link span,
.service-card__link:focus-visible span {
	transform: translateX(3px);
}

/* Services Page */

.services-page-hero {
	position: relative;
	overflow: hidden;
	min-height: clamp(440px, 34vw, 520px);
	background-image:
		linear-gradient(90deg, rgba(3, 24, 50, 0.97) 0%, rgba(6, 45, 91, 0.92) 34%, rgba(6, 45, 91, 0.58) 64%, rgba(6, 45, 91, 0.16) 100%),
		url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--white);
}

.services-page-hero::before {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 50%, rgba(85, 189, 58, 0.22), transparent 30%),
		linear-gradient(180deg, rgba(3, 24, 50, 0.1), rgba(3, 24, 50, 0.2));
	content: "";
	pointer-events: none;
}

.services-page-hero::after {
	position: absolute;
	left: max(20px, calc((100vw - var(--container)) / 2));
	bottom: 72px;
	width: min(320px, 32vw);
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--brand-green), transparent);
	box-shadow: 0 0 28px rgba(85, 189, 58, 0.45);
	content: "";
}

.services-page-hero__inner {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	min-height: clamp(440px, 34vw, 520px);
	padding-top: clamp(68px, 6vw, 92px);
	padding-bottom: clamp(68px, 6vw, 92px);
}

.services-page-hero__content {
	width: min(100%, 820px);
}

.services-page-hero__eyebrow,
.services-page-listing__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border-radius: 999px;
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.services-page-hero__eyebrow {
	border: 1px solid rgba(255, 255, 255, 0.24);
	background: rgba(255, 255, 255, 0.09);
	color: rgba(255, 255, 255, 0.88);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.services-page-hero__eyebrow span,
.services-page-listing__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.services-page-hero__title {
	max-width: 820px;
	margin: 0;
	color: var(--white);
	font-size: clamp(42px, 4.2vw, 60px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.services-page-hero__title span {
	display: block;
}

.services-page-hero__title span:last-child {
	color: var(--brand-green);
}

.services-page-hero__description {
	max-width: 680px;
	margin: 22px 0 0;
	color: rgba(255, 255, 255, 0.84);
	font-size: clamp(1rem, 1.15vw, 1.1rem);
	line-height: 1.72;
}

.services-page-hero__breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	max-width: 680px;
	margin-top: 20px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.5;
}

.services-page-hero__breadcrumb a {
	color: rgba(255, 255, 255, 0.84);
	transition: color 220ms ease, transform 220ms ease;
}

.services-page-hero__breadcrumb a:hover,
.services-page-hero__breadcrumb a:focus-visible {
	color: var(--brand-green);
	transform: translateY(-1px);
}

.services-page-hero__breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

.services-page-listing {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 10% 28%, rgba(85, 189, 58, 0.1), transparent 28%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 52%, #f8fbff 100%);
}

.services-page-listing__heading {
	position: relative;
	z-index: 1;
	max-width: 920px;
	margin: 0 auto 42px;
	text-align: center;
}

.services-page-listing__eyebrow {
	border: 1px solid rgba(85, 189, 58, 0.26);
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px !important;
	font-style: normal !important;
	font-weight: 800 !important;
	line-height: 13px !important;
	letter-spacing: 0 !important;
}

.services-page-listing__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(40px, 4vw, 58px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.services-page-listing__heading h2 span {
	display: block;
}

.services-page-listing__heading h2 span:last-child {
	color: var(--brand-green);
}

.services-page-listing__heading > p {
	max-width: 780px;
	margin: 22px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.2vw, 1.1rem);
	line-height: 1.72;
}

.services-page-tabs {
	position: relative;
	z-index: 1;
}

.services-page-tablist {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max-content;
	max-width: 100%;
	margin: 0 auto 36px;
	padding: 6px;
	border: 1px solid rgba(10, 47, 91, 0.12);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 18px 44px rgba(6, 45, 91, 0.08);
}

.services-page-tab {
	min-height: 46px;
	padding: 12px 24px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--primary-navy);
	font-size: 0.84rem;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 220ms ease, color 220ms ease, box-shadow 220ms ease;
}

.services-page-tab:hover,
.services-page-tab:focus-visible {
	background: rgba(85, 189, 58, 0.09);
	color: var(--brand-green-dark);
}

.services-page-tab.is-active {
	background: linear-gradient(135deg, #58c83f, #3daa35);
	color: var(--white);
	box-shadow: 0 12px 28px rgba(85, 189, 58, 0.26);
}

.services-page-panel {
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 280ms ease, transform 280ms ease;
}

.services-page-panel.is-active {
	opacity: 1;
	transform: translateY(0);
}

.services-page-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.services-page-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	padding: 30px;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 16px 42px rgba(6, 45, 91, 0.07);
	transition: transform 260ms ease, border-color 260ms ease, box-shadow 260ms ease;
}

.services-page-card:hover {
	transform: translateY(-5px);
	border-color: rgba(85, 189, 58, 0.45);
	box-shadow: 0 22px 54px rgba(6, 45, 91, 0.12);
}

.services-page-card__icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 50px;
	height: 50px;
	margin-bottom: 22px;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
	font-size: 1.3rem;
	transition: background 260ms ease, border-color 260ms ease, color 260ms ease;
}

.services-page-card:hover .services-page-card__icon {
	border-color: rgba(85, 189, 58, 0.58);
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
}

.services-page-card h3 {
	margin: 0 0 13px;
	color: var(--primary-navy);
	font-size: clamp(1.16rem, 1.4vw, 1.34rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.services-page-card p {
	margin: 0 0 24px;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.services-page-card__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: max-content;
	max-width: 100%;
	margin-top: auto;
	color: var(--brand-green-dark);
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.35;
}

.services-page-card__link span {
	display: inline-block;
	flex: 0 0 auto;
	transition: transform 260ms ease;
}

.services-page-card:hover .services-page-card__link span,
.services-page-card__link:focus-visible span {
	transform: translateX(3px);
}

.services-page-empty {
	max-width: 640px;
	margin: 0 auto;
	padding: 22px 24px;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.86);
	color: var(--text-muted);
	font-weight: 700;
	text-align: center;
}

/* Blogs Page */

.blogs-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 14% 32%, rgba(85, 189, 58, 0.13), transparent 28%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 100%);
}

.blogs-hero::before {
	position: absolute;
	inset: auto -10% -32% 54%;
	height: 360px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.08);
	content: "";
	pointer-events: none;
}

.blogs-hero__inner {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	min-height: clamp(390px, 30vw, 500px);
	padding: clamp(72px, 6vw, 104px) 0;
	text-align: center;
}

.blogs-hero__content {
	width: min(100%, 900px);
	margin: 0 auto;
}

.blogs-hero__eyebrow,
.blogs-listing__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: var(--primary-navy);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	letter-spacing: 0;
	text-transform: uppercase;
}

.blogs-hero__eyebrow span,
.blogs-listing__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.blogs-hero__title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(40px, 4vw, 58px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.blogs-hero__title span,
.blogs-listing__heading h2 span {
	display: block;
}

.blogs-hero__title span:last-child,
.blogs-listing__heading h2 span:last-child {
	color: var(--brand-green);
}

.blogs-hero__description {
	max-width: 720px;
	margin: 22px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.2vw, 1.12rem);
	line-height: 1.72;
}

.blogs-hero__breadcrumb {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
	color: var(--text-muted);
	font-size: 0.92rem;
	font-weight: 700;
}

.blogs-hero__breadcrumb a {
	color: var(--primary-navy);
	transition: color 220ms ease, transform 220ms ease;
}

.blogs-hero__breadcrumb a:hover,
.blogs-hero__breadcrumb a:focus-visible {
	color: var(--brand-green-dark);
	transform: translateY(-1px);
}

.blogs-hero__breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

.blogs-filter {
	position: relative;
	z-index: 2;
	padding: 0 0 34px;
	background: #ffffff;
}

.blogs-filter__nav {
	display: flex;
	align-items: center;
	gap: 10px;
	max-width: 100%;
	padding: 8px;
	overflow-x: auto;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 18px 44px rgba(6, 45, 91, 0.08);
	-webkit-overflow-scrolling: touch;
}

.blogs-filter__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	color: var(--primary-navy);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
	transition: background 220ms ease, color 220ms ease, box-shadow 220ms ease;
}

.blogs-filter__link:hover,
.blogs-filter__link:focus-visible {
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
}

.blogs-filter__link.is-active {
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	box-shadow: 0 12px 28px rgba(85, 189, 58, 0.26);
}

.blogs-listing {
	position: relative;
	overflow: hidden;
	padding: clamp(70px, 6vw, 104px) 0;
	background:
		radial-gradient(circle at 88% 12%, rgba(85, 189, 58, 0.09), transparent 28%),
		linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

.blogs-listing__heading {
	max-width: 880px;
	margin: 0 auto 42px;
	text-align: center;
}

.blogs-listing__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.6vw, 54px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: 0;
}

.blogs-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.blog-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 16px 42px rgba(6, 45, 91, 0.07);
	transition: transform 260ms ease, border-color 260ms ease, box-shadow 260ms ease;
}

.blog-card:hover {
	transform: translateY(-5px);
	border-color: rgba(85, 189, 58, 0.42);
	box-shadow: 0 22px 54px rgba(6, 45, 91, 0.12);
}

.blog-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: rgba(6, 45, 91, 0.06);
}

.blog-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 320ms ease;
}

.blog-card:hover .blog-card__image {
	transform: scale(1.04);
}

.blog-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 24px;
}

.blog-card__category {
	align-self: flex-start;
	margin-bottom: 14px;
	padding: 7px 11px;
	border: 1px solid rgba(85, 189, 58, 0.22);
	border-radius: 999px;
	background: rgba(85, 189, 58, 0.09);
	color: var(--brand-green-dark);
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
}

.blog-card__title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(1.16rem, 1.45vw, 1.34rem);
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.blog-card__title a {
	transition: color 220ms ease;
}

.blog-card__title a:hover,
.blog-card__title a:focus-visible {
	color: var(--brand-green-dark);
}

.blog-card__excerpt {
	margin: 14px 0 22px;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.blog-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: auto;
	padding-top: 18px;
	border-top: 1px solid rgba(6, 45, 91, 0.08);
	color: var(--text-muted);
	font-size: 0.86rem;
	font-weight: 700;
}

.blog-card__read-more {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--brand-green-dark);
	font-size: 0.9rem;
	font-weight: 800;
	white-space: nowrap;
	transition: color 220ms ease, transform 220ms ease;
}

.blog-card__read-more:hover,
.blog-card__read-more:focus-visible {
	color: var(--primary-navy);
	transform: translateX(2px);
}

.blogs-pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 44px;
}

.blogs-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 10px 14px;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.9);
	color: var(--primary-navy);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 10px 24px rgba(6, 45, 91, 0.05);
}

.blogs-pagination a.page-numbers {
	transition: background 220ms ease, color 220ms ease, border-color 220ms ease, transform 220ms ease;
}

.blogs-pagination a.page-numbers:hover,
.blogs-pagination a.page-numbers:focus-visible,
.blogs-pagination .page-numbers.current {
	border-color: var(--brand-green);
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-1px);
}

.blogs-empty {
	max-width: 680px;
	margin: 0 auto;
	padding: 28px;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--text-muted);
	text-align: center;
	box-shadow: 0 16px 42px rgba(6, 45, 91, 0.06);
}

.blogs-empty h2 {
	margin: 0 0 10px;
	color: var(--primary-navy);
	font-size: clamp(1.5rem, 2.4vw, 2rem);
	font-weight: 800;
}

.blogs-empty p {
	margin: 0;
	line-height: 1.7;
}

/* Blog Detail Page */

.blog-detail-page {
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 22%, rgba(85, 189, 58, 0.12), transparent 28%),
		linear-gradient(180deg, #f7fbff 0%, #ffffff 44%, #f8fbff 100%);
}

.blog-detail-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(68px, 6vw, 104px) 0 clamp(58px, 5vw, 88px);
	background:
		radial-gradient(circle at 84% 28%, rgba(85, 189, 58, 0.1), transparent 30%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 100%);
}

.blog-detail-hero::before {
	position: absolute;
	inset: 12% auto auto -12%;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	content: "";
	pointer-events: none;
}

.blog-detail-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
	align-items: center;
	gap: clamp(34px, 5vw, 74px);
}

.blog-detail-hero__content {
	min-width: 0;
}

.blog-detail-hero__breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 22px;
	color: var(--text-muted);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.4;
}

.blog-detail-hero__breadcrumb a {
	color: var(--primary-navy);
	transition: color 220ms ease, transform 220ms ease;
}

.blog-detail-hero__breadcrumb a:hover,
.blog-detail-hero__breadcrumb a:focus-visible {
	color: var(--brand-green-dark);
	transform: translateY(-1px);
}

.blog-detail-hero__breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

.blog-detail-hero__breadcrumb span[aria-current="page"] {
	max-width: min(100%, 520px);
	overflow: hidden;
	color: var(--text-muted);
	text-overflow: ellipsis;
	white-space: nowrap;
}

.blog-detail-hero__category {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 18px;
	padding: 8px 14px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: var(--primary-navy);
	font-size: 12px;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.blog-detail-hero__category span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.blog-detail-hero__title {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(40px, 4vw, 62px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
	overflow-wrap: anywhere;
}

.blog-detail-hero__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 18px;
	margin-top: 24px;
	color: var(--text-muted);
	font-size: 0.94rem;
	font-weight: 700;
	line-height: 1.4;
}

.blog-detail-hero__meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.blog-detail-hero__meta i {
	color: var(--brand-green);
}

.blog-detail-hero__media {
	position: relative;
	min-width: 0;
}

.blog-detail-hero__media::before {
	position: absolute;
	inset: 20px -18px -18px 24px;
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.16);
	content: "";
	pointer-events: none;
}

.blog-detail-hero__media img {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 11;
	object-fit: cover;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	box-shadow: 0 26px 64px rgba(6, 45, 91, 0.14);
}

.blog-detail-body {
	padding: clamp(64px, 5vw, 92px) 0;
	background: #ffffff;
}

.blog-detail-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.7fr) minmax(280px, 0.3fr);
	align-items: start;
	gap: clamp(28px, 4vw, 54px);
}

.blog-detail-article,
.blog-detail-sidebar-card,
.blog-detail-share,
.blog-detail-cta__panel,
.blog-detail-post-nav__link {
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 18px 44px rgba(6, 45, 91, 0.07);
}

.blog-detail-article {
	min-width: 0;
	padding: clamp(28px, 4vw, 48px);
}

.blog-detail-content {
	color: var(--text-muted);
	font-size: 1.03rem;
	line-height: 1.82;
}

.blog-detail-content > *:first-child {
	margin-top: 0;
}

.blog-detail-content > *:last-child {
	margin-bottom: 0;
}

.blog-detail-content p,
.blog-detail-content ul,
.blog-detail-content ol {
	margin: 0 0 1.35em;
}

.blog-detail-content h2,
.blog-detail-content h3,
.blog-detail-content h4 {
	margin: 1.65em 0 0.65em;
	color: var(--primary-navy);
	font-weight: 800;
	line-height: 1.18;
	letter-spacing: 0;
}

.blog-detail-content h2 {
	font-size: clamp(1.65rem, 2.5vw, 2.25rem);
}

.blog-detail-content h3 {
	font-size: clamp(1.34rem, 2vw, 1.72rem);
}

.blog-detail-content a {
	color: var(--brand-green-dark);
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.blog-detail-content img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
}

.blog-detail-content blockquote {
	margin: 28px 0;
	padding: 24px;
	border-left: 4px solid var(--brand-green);
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.08);
	color: var(--primary-navy);
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.65;
}

.blog-detail-content table {
	display: block;
	width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
}

.blog-detail-share {
	margin-top: 34px;
	padding: 22px;
}

.blog-detail-share h2,
.blog-detail-sidebar-card h2 {
	margin: 0 0 16px;
	color: var(--primary-navy);
	font-size: 1.2rem;
	font-weight: 800;
	line-height: 1.25;
}

.blog-detail-share__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.blog-detail-share__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 10px 14px;
	border-radius: 999px;
	background: rgba(85, 189, 58, 0.1);
	color: var(--primary-navy);
	font-size: 0.88rem;
	font-weight: 800;
	line-height: 1;
	transition: background 220ms ease, color 220ms ease, transform 220ms ease;
}

.blog-detail-share__link:hover,
.blog-detail-share__link:focus-visible {
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-1px);
}

.blog-detail-sidebar {
	position: sticky;
	top: 110px;
	display: grid;
	gap: 20px;
	min-width: 0;
}

.blog-detail-sidebar-card {
	padding: 24px;
}

.blog-detail-sidebar-card--cta {
	background:
		radial-gradient(circle at 86% 12%, rgba(85, 189, 58, 0.22), transparent 34%),
		linear-gradient(135deg, #062d5b 0%, #0a3d76 100%);
	color: var(--white);
}

.blog-detail-sidebar-card__eyebrow {
	display: inline-flex;
	margin-bottom: 14px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
}

.blog-detail-sidebar-card--cta h2,
.blog-detail-sidebar-card--cta p {
	color: var(--white);
}

.blog-detail-sidebar-card p {
	margin: 0 0 18px;
	color: var(--text-muted);
	line-height: 1.68;
}

.blog-detail-sidebar-card__button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 11px 15px;
	border-radius: 999px;
	background: var(--brand-green);
	color: var(--white);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1;
	transition: background 220ms ease, transform 220ms ease;
}

.blog-detail-sidebar-card__button:hover,
.blog-detail-sidebar-card__button:focus-visible {
	background: var(--brand-green-dark);
	transform: translateY(-1px);
}

.blog-detail-recent,
.blog-detail-categories {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.blog-detail-recent li,
.blog-detail-categories li {
	min-width: 0;
	padding-top: 14px;
	border-top: 1px solid rgba(6, 45, 91, 0.08);
}

.blog-detail-recent li:first-child,
.blog-detail-categories li:first-child {
	padding-top: 0;
	border-top: 0;
}

.blog-detail-recent a,
.blog-detail-categories a {
	color: var(--primary-navy);
	font-size: 0.96rem;
	font-weight: 800;
	line-height: 1.35;
	overflow-wrap: anywhere;
	transition: color 220ms ease;
}

.blog-detail-recent a:hover,
.blog-detail-recent a:focus-visible,
.blog-detail-categories a:hover,
.blog-detail-categories a:focus-visible {
	color: var(--brand-green-dark);
}

.blog-detail-recent time {
	display: block;
	margin-top: 6px;
	color: var(--text-muted);
	font-size: 0.82rem;
	font-weight: 700;
}

.blog-detail-cta {
	padding: 0 0 clamp(58px, 5vw, 86px);
	background: #ffffff;
}

.blog-detail-cta__panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 26px;
	padding: clamp(26px, 4vw, 42px);
	background:
		radial-gradient(circle at 86% 18%, rgba(85, 189, 58, 0.17), transparent 34%),
		linear-gradient(135deg, #062d5b 0%, #0b3d74 100%);
}

.blog-detail-cta__eyebrow {
	display: inline-flex;
	margin-bottom: 10px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.78rem;
	font-weight: 800;
	text-transform: uppercase;
}

.blog-detail-cta__panel h2 {
	margin: 0;
	max-width: 760px;
	color: var(--white);
	font-size: clamp(1.8rem, 3vw, 2.65rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.blog-detail-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	gap: 10px;
	min-height: 50px;
	padding: 14px 22px;
	border-radius: 999px;
	background: var(--brand-green);
	color: var(--white);
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 14px 30px rgba(85, 189, 58, 0.25);
	transition: background 220ms ease, transform 220ms ease;
}

.blog-detail-cta__button:hover,
.blog-detail-cta__button:focus-visible {
	background: var(--brand-green-dark);
	transform: translateY(-1px);
}

.blog-detail-post-nav {
	padding: 0 0 clamp(58px, 5vw, 86px);
	background: #ffffff;
}

.blog-detail-post-nav__inner {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.blog-detail-post-nav__link {
	display: grid;
	gap: 8px;
	padding: 22px;
	color: var(--primary-navy);
	transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.blog-detail-post-nav__link--next {
	text-align: right;
}

.blog-detail-post-nav__link span {
	color: var(--brand-green-dark);
	font-size: 0.78rem;
	font-weight: 800;
	text-transform: uppercase;
}

.blog-detail-post-nav__link strong {
	font-size: 1.08rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.blog-detail-post-nav__link:hover,
.blog-detail-post-nav__link:focus-visible {
	transform: translateY(-2px);
	border-color: rgba(85, 189, 58, 0.38);
	box-shadow: 0 22px 54px rgba(6, 45, 91, 0.12);
}

.blog-detail-related {
	padding: clamp(64px, 5vw, 92px) 0;
	background:
		radial-gradient(circle at 88% 12%, rgba(85, 189, 58, 0.09), transparent 28%),
		linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.blog-detail-related__heading {
	max-width: 780px;
	margin: 0 auto 36px;
	text-align: center;
}

.blog-detail-related__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(32px, 3vw, 46px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0;
}

.blog-detail-related__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1024px) {
	.blog-detail-hero__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.blog-detail-hero__media {
		max-width: 720px;
	}

	.blog-detail-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.blog-detail-sidebar {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.blog-detail-sidebar-card--cta {
		grid-column: 1 / -1;
	}
}

@media (max-width: 768px) {
	.blog-detail-hero {
		padding: 54px 0 58px;
	}

	.blog-detail-hero__breadcrumb span[aria-current="page"] {
		max-width: 100%;
		white-space: normal;
	}

	.blog-detail-hero__title {
		font-size: clamp(32px, 8vw, 44px);
	}

	.blog-detail-article {
		padding: 24px;
	}

	.blog-detail-share__links {
		flex-direction: column;
	}

	.blog-detail-share__link {
		justify-content: center;
		width: 100%;
	}

	.blog-detail-sidebar {
		grid-template-columns: minmax(0, 1fr);
	}

	.blog-detail-cta__panel {
		align-items: flex-start;
		flex-direction: column;
	}

	.blog-detail-post-nav__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.blog-detail-post-nav__link--next {
		text-align: left;
	}

	.blog-detail-related__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 520px) {
	.blog-detail-hero {
		padding: 44px 0 48px;
	}

	.blog-detail-hero__category {
		font-size: 11px;
		line-height: 12px;
	}

	.blog-detail-hero__media::before {
		inset: 14px -8px -10px 12px;
	}

	.blog-detail-body,
	.blog-detail-related {
		padding: 48px 0;
	}

	.blog-detail-article,
	.blog-detail-share,
	.blog-detail-sidebar-card,
	.blog-detail-post-nav__link {
		padding: 20px;
	}

	.blog-detail-content {
		font-size: 0.98rem;
		line-height: 1.74;
	}

	.blog-detail-cta__button {
		width: 100%;
	}
}

/* Service Detail Hero */

.service-detail-page {
	background: #f7fbff;
}

.service-detail-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(78px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 12% 24%, rgba(85, 189, 58, 0.16), transparent 30%),
		radial-gradient(circle at 88% 20%, rgba(6, 45, 91, 0.12), transparent 28%),
		linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
}

.service-detail-hero::before {
	position: absolute;
	inset: auto 0 0;
	height: 46%;
	background: linear-gradient(180deg, transparent, rgba(85, 189, 58, 0.06));
	content: "";
	pointer-events: none;
}

.service-detail-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.78fr);
	gap: clamp(42px, 5vw, 72px);
	align-items: center;
}

.service-detail-hero__content {
	min-width: 0;
}

.service-detail-hero__breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 22px;
	color: var(--text-muted);
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.5;
}

.service-detail-hero__breadcrumb a {
	color: var(--primary-navy);
	transition: color 220ms ease, transform 220ms ease;
}

.service-detail-hero__breadcrumb a:hover,
.service-detail-hero__breadcrumb a:focus-visible {
	color: var(--brand-green-dark);
	transform: translateY(-1px);
}

.service-detail-hero__breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

.service-detail-hero__breadcrumb span[aria-current="page"] {
	max-width: min(100%, 420px);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.service-detail-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-hero__badge span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-hero__title {
	max-width: 780px;
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(42px, 4.6vw, 66px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
	overflow-wrap: anywhere;
}

.service-detail-hero__description {
	max-width: 680px;
	margin: 22px 0 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.18vw, 1.12rem);
	line-height: 1.72;
}

.service-detail-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 32px;
}

.service-detail-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 50px;
	padding: 14px 20px;
	border-radius: 999px;
	font-size: 0.94rem;
	font-weight: 800;
	line-height: 1;
	transition: transform 240ms ease, box-shadow 240ms ease, background 240ms ease, color 240ms ease, border-color 240ms ease;
}

.service-detail-hero__button i {
	font-size: 0.88rem;
	transition: transform 240ms ease;
}

.service-detail-hero__button--primary {
	border: 1px solid rgba(85, 189, 58, 0.7);
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	box-shadow: 0 16px 34px rgba(85, 189, 58, 0.28);
}

.service-detail-hero__button--secondary {
	border: 1px solid rgba(6, 45, 91, 0.16);
	background: rgba(255, 255, 255, 0.82);
	color: var(--primary-navy);
	box-shadow: 0 14px 28px rgba(6, 45, 91, 0.07);
}

.service-detail-hero__button:hover,
.service-detail-hero__button:focus-visible {
	transform: translateY(-2px);
}

.service-detail-hero__button:hover i,
.service-detail-hero__button:focus-visible i {
	transform: translateX(3px);
}

.service-detail-hero__button--primary:hover,
.service-detail-hero__button--primary:focus-visible {
	color: var(--white);
	box-shadow: 0 22px 44px rgba(85, 189, 58, 0.34);
}

.service-detail-hero__button--secondary:hover,
.service-detail-hero__button--secondary:focus-visible {
	border-color: rgba(85, 189, 58, 0.38);
	background: var(--white);
	color: var(--brand-green-dark);
}

.service-detail-hero__media {
	position: relative;
	min-width: 0;
	margin: 0;
}

.service-detail-hero__media::before {
	position: absolute;
	inset: -16px auto auto -16px;
	z-index: -1;
	width: 54%;
	height: 48%;
	border-radius: 24px;
	background: rgba(85, 189, 58, 0.16);
	content: "";
}

.service-detail-hero__media::after {
	position: absolute;
	right: -18px;
	bottom: -18px;
	z-index: -1;
	width: 48%;
	height: 42%;
	border-radius: 24px;
	background: rgba(6, 45, 91, 0.1);
	content: "";
}

.service-detail-hero__media img {
	display: block;
	width: 100%;
	aspect-ratio: 1.08 / 0.86;
	min-height: 390px;
	border: 1px solid rgba(6, 45, 91, 0.12);
	border-radius: 26px;
	box-shadow: 0 28px 70px rgba(6, 45, 91, 0.18);
	object-fit: cover;
	object-position: center;
}

.service-detail-overview {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

.service-detail-overview::before {
	position: absolute;
	top: 18%;
	right: -140px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	content: "";
	pointer-events: none;
}

.service-detail-overview__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(320px, 0.46fr) minmax(0, 0.54fr);
	gap: clamp(42px, 5vw, 72px);
	align-items: center;
}

.service-detail-overview__media {
	position: relative;
	min-width: 0;
	margin: 0;
}

.service-detail-overview__media::before {
	position: absolute;
	inset: -14px auto auto -14px;
	z-index: -1;
	width: 44%;
	height: 42%;
	border: 2px solid rgba(85, 189, 58, 0.26);
	border-radius: 24px;
	content: "";
}

.service-detail-overview__media img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 0.82;
	min-height: 410px;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 26px;
	box-shadow: 0 24px 64px rgba(6, 45, 91, 0.14);
	object-fit: cover;
	object-position: center;
}

.service-detail-overview__badge {
	position: absolute;
	right: 24px;
	bottom: 24px;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-width: 210px;
	margin: 0;
	padding: 14px 16px;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 18px 38px rgba(6, 45, 91, 0.12);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.service-detail-overview__badge i {
	display: inline-grid;
	grid-row: span 2;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.12);
	color: var(--brand-green-dark);
}

.service-detail-overview__badge span,
.service-detail-overview__badge strong {
	display: block;
	line-height: 1.25;
}

.service-detail-overview__badge span {
	color: var(--text-muted);
	font-size: 0.78rem;
	font-weight: 700;
}

.service-detail-overview__badge strong {
	color: var(--primary-navy);
	font-size: 0.96rem;
	font-weight: 800;
}

.service-detail-overview__content {
	min-width: 0;
}

.service-detail-overview__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-overview__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-overview__content h2 {
	max-width: 720px;
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.5vw, 54px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.1;
	overflow-wrap: anywhere;
}

.service-detail-overview__description {
	max-width: 700px;
	margin-top: 22px;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.1vw, 1.08rem);
	line-height: 1.72;
}

.service-detail-overview__description p {
	margin: 0 0 16px;
}

.service-detail-overview__description p:last-child {
	margin-bottom: 0;
}

.service-detail-overview__points {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding: 0;
	margin: 28px 0 0;
	list-style: none;
}

.service-detail-overview__points li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 9px 13px;
	border: 1px solid rgba(85, 189, 58, 0.2);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.25;
}

.service-detail-overview__points i {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--brand-green);
	color: var(--white);
	font-size: 0.68rem;
}

.service-detail-offers {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 82% 18%, rgba(85, 189, 58, 0.09), transparent 28%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 100%);
}

.service-detail-offers__heading {
	position: relative;
	z-index: 1;
	max-width: 900px;
	margin: 0 auto 42px;
	text-align: center;
}

.service-detail-offers__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-offers__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-offers__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(38px, 3.8vw, 56px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.service-detail-offers__heading h2 span {
	display: block;
}

.service-detail-offers__heading h2 span:last-child {
	color: var(--brand-green);
}

.service-detail-offers__heading > p {
	max-width: 760px;
	margin: 22px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.08rem);
	line-height: 1.72;
}

.service-detail-offers__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.service-detail-offer-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	padding: 30px;
	overflow: hidden;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 16px 42px rgba(6, 45, 91, 0.07);
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
	transition-delay: var(--offer-delay, 0ms);
}

.service-detail-offer-card::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--brand-green), rgba(85, 189, 58, 0));
	content: "";
}

.service-detail-offer-card__icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 50px;
	height: 50px;
	margin-bottom: 22px;
	border: 1px solid rgba(85, 189, 58, 0.24);
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
	font-size: 1.28rem;
	transition: transform 300ms ease, background 300ms ease, border-color 300ms ease, color 300ms ease;
}

.service-detail-offer-card h3 {
	margin: 0 0 13px;
	color: var(--primary-navy);
	font-size: clamp(1.16rem, 1.35vw, 1.32rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.service-detail-offer-card p {
	margin: 0;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.service-detail-benefits {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 12% 20%, rgba(6, 45, 91, 0.08), transparent 30%),
		linear-gradient(180deg, #ffffff 0%, #f5f9fd 100%);
}

.service-detail-benefits__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(280px, 0.4fr) minmax(0, 0.6fr);
	gap: clamp(44px, 5vw, 76px);
	align-items: start;
}

.service-detail-benefits__content {
	min-width: 0;
}

.service-detail-benefits__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-benefits__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-benefits__content h2 {
	max-width: 560px;
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.45vw, 54px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.1;
	overflow-wrap: anywhere;
}

.service-detail-benefits__content h2 span {
	display: block;
}

.service-detail-benefits__content h2 span:last-child {
	color: var(--brand-green);
}

.service-detail-benefits__content > p {
	max-width: 560px;
	margin: 22px 0 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.1vw, 1.08rem);
	line-height: 1.72;
}

.service-detail-benefits__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding: 0;
	margin: 28px 0 0;
	list-style: none;
}

.service-detail-benefits__trust li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 36px;
	padding: 8px 12px;
	border: 1px solid rgba(85, 189, 58, 0.2);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1.25;
}

.service-detail-benefits__trust i {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 17px;
	height: 17px;
	border-radius: 50%;
	background: var(--brand-green);
	color: var(--white);
	font-size: 0.62rem;
}

.service-detail-benefits__list {
	display: grid;
	gap: 0;
	min-width: 0;
	border-top: 1px solid rgba(6, 45, 91, 0.1);
}

.service-detail-benefit-item {
	position: relative;
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr) auto;
	gap: 18px;
	align-items: start;
	padding: 24px 16px;
	border-bottom: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 0;
	transition: background 280ms ease, transform 280ms ease, border-color 280ms ease;
	transition-delay: var(--benefit-delay, 0ms);
}

.service-detail-benefit-item__icon {
	display: inline-grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border: 1px solid rgba(85, 189, 58, 0.22);
	border-radius: 14px;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
	font-size: 1.18rem;
	transition: transform 280ms ease, background 280ms ease, border-color 280ms ease;
}

.service-detail-benefit-item__body {
	min-width: 0;
}

.service-detail-benefit-item h3 {
	margin: 0 0 8px;
	color: var(--primary-navy);
	font-size: clamp(1.08rem, 1.25vw, 1.22rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	overflow-wrap: anywhere;
	transition: color 280ms ease;
}

.service-detail-benefit-item p {
	max-width: 680px;
	margin: 0;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.68;
}

.service-detail-benefit-item__number {
	color: rgba(6, 45, 91, 0.22);
	font-size: 0.82rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
}

.service-detail-process {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 50% 22%, rgba(85, 189, 58, 0.1), transparent 30%),
		linear-gradient(180deg, #f6fafe 0%, #ffffff 100%);
}

.service-detail-process__heading {
	position: relative;
	z-index: 1;
	max-width: 900px;
	margin: 0 auto 54px;
	text-align: center;
}

.service-detail-process__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-process__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-process__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(38px, 3.8vw, 56px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.service-detail-process__heading h2 span {
	display: block;
}

.service-detail-process__heading h2 span:last-child {
	color: var(--brand-green);
}

.service-detail-process__heading > p {
	max-width: 760px;
	margin: 22px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.08rem);
	line-height: 1.72;
}

.service-detail-process__timeline {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: clamp(22px, 2.4vw, 32px);
	padding: 34px 0 0;
	margin: 0;
	list-style: none;
	counter-reset: service-process;
}

.service-detail-process__timeline::before,
.service-detail-process__timeline::after {
	position: absolute;
	top: 82px;
	left: 0;
	right: 0;
	height: 2px;
	border-radius: 999px;
	content: "";
	pointer-events: none;
}

.service-detail-process__timeline::before {
	background: rgba(6, 45, 91, 0.12);
}

.service-detail-process__timeline::after {
	right: auto;
	width: 100%;
	background: linear-gradient(90deg, var(--brand-green), rgba(85, 189, 58, 0.16));
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 1700ms ease;
}

.service-detail-process.is-active .service-detail-process__timeline::after {
	transform: scaleX(1);
}

.service-detail-process__step {
	position: relative;
	display: grid;
	justify-items: center;
	min-width: 0;
	text-align: center;
	transition: transform 280ms ease;
	transition-delay: var(--process-delay, 0ms);
}

.service-detail-process__number {
	display: inline-block;
	margin-bottom: 15px;
	color: rgba(6, 45, 91, 0.55);
	font-size: 0.88rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
}

.service-detail-process__node {
	position: relative;
	z-index: 2;
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin-bottom: 24px;
	border: 6px solid #f6fafe;
	border-radius: 50%;
	background: var(--brand-green);
	opacity: 0.72;
	box-shadow: 0 0 0 1px rgba(85, 189, 58, 0.3), 0 10px 24px rgba(85, 189, 58, 0.18);
	transform: scale(0.82);
	transition: opacity 360ms ease, transform 360ms ease, box-shadow 280ms ease;
	transition-delay: var(--process-delay, 0ms);
}

.service-detail-process__node::before {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--white);
	content: "";
}

.service-detail-process__step h3 {
	max-width: 240px;
	margin: 0 0 10px;
	color: var(--primary-navy);
	font-size: clamp(1.08rem, 1.25vw, 1.22rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	overflow-wrap: anywhere;
	transition: color 280ms ease;
}

.service-detail-process__step p {
	max-width: 250px;
	margin: 0;
	color: var(--text-muted);
	font-size: 0.94rem;
	line-height: 1.65;
}

.service-detail-process.is-active .service-detail-process__node {
	opacity: 1;
	transform: scale(1);
}

.service-detail-faq {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

.service-detail-faq__inner {
	display: grid;
	grid-template-columns: minmax(280px, 0.36fr) minmax(0, 0.64fr);
	gap: clamp(42px, 5vw, 76px);
	align-items: start;
}

.service-detail-faq__content {
	position: sticky;
	top: 118px;
	min-width: 0;
}

.service-detail-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-faq__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-faq__content h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.6vw, 52px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.service-detail-faq__content h2 span {
	display: block;
}

.service-detail-faq__content h2 span:last-child {
	color: var(--brand-green);
}

.service-detail-faq__content > p {
	max-width: 440px;
	margin: 22px 0 0;
	color: var(--text-muted);
	font-size: 1rem;
	line-height: 1.72;
}

.service-detail-faq__support {
	display: inline-grid;
	gap: 6px;
	margin-top: 28px;
	padding: 16px 18px;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.82);
	box-shadow: 0 14px 34px rgba(6, 45, 91, 0.06);
}

.service-detail-faq__support span {
	color: var(--text-muted);
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.3;
}

.service-detail-faq__support a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--primary-navy);
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	transition: color 240ms ease;
}

.service-detail-faq__support a i {
	color: var(--brand-green);
	font-size: 0.86rem;
	transition: transform 240ms ease;
}

.service-detail-faq__accordion {
	display: grid;
	gap: 14px;
	min-width: 0;
}

.service-detail-faq__item {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(6, 45, 91, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 12px 30px rgba(6, 45, 91, 0.055);
	transition: border-color 260ms ease, box-shadow 260ms ease, transform 260ms ease;
}

.service-detail-faq__item::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 3px;
	background: var(--brand-green);
	content: "";
	opacity: 0;
	transition: opacity 260ms ease;
}

.service-detail-faq__item.is-active {
	border-color: rgba(85, 189, 58, 0.34);
	box-shadow: 0 18px 42px rgba(6, 45, 91, 0.08);
}

.service-detail-faq__item.is-active::before {
	opacity: 1;
}

.service-detail-faq__item h3 {
	margin: 0;
}

.service-detail-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 62px;
	gap: 18px;
	padding: 20px 22px 20px 24px;
	border: 0;
	background: transparent;
	color: var(--primary-navy);
	font: inherit;
	font-size: clamp(1rem, 1.1vw, 1.12rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.35;
	text-align: left;
	cursor: pointer;
}

.service-detail-faq__question > span:first-child {
	flex: 1 1 auto;
	min-width: 0;
	overflow-wrap: anywhere;
}

.service-detail-faq__toggle {
	position: relative;
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(85, 189, 58, 0.28);
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	transition: border-color 260ms ease, background 260ms ease;
}

.service-detail-faq__toggle::before,
.service-detail-faq__toggle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 2px;
	border-radius: 999px;
	background: var(--primary-navy);
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 260ms ease, background 260ms ease;
}

.service-detail-faq__toggle::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.service-detail-faq__question[aria-expanded="true"] .service-detail-faq__toggle {
	border-color: var(--brand-green);
	background: var(--brand-green);
}

.service-detail-faq__question[aria-expanded="true"] .service-detail-faq__toggle::before,
.service-detail-faq__question[aria-expanded="true"] .service-detail-faq__toggle::after {
	background: var(--white);
}

.service-detail-faq__question[aria-expanded="true"] .service-detail-faq__toggle::after {
	transform: translate(-50%, -50%) rotate(0);
}

.service-detail-faq__answer {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 340ms ease;
}

.service-detail-faq__answer.is-open {
	grid-template-rows: 1fr;
}

.service-detail-faq__answer > div {
	overflow: hidden;
	min-height: 0;
}

.service-detail-faq__answer p {
	margin: 0;
	padding: 0 24px;
	color: var(--text-muted);
	font-size: 0.98rem;
	line-height: 1.72;
}

.service-detail-faq__answer p + p {
	margin-top: 12px;
}

.service-detail-faq__answer.is-open p:last-child {
	padding-bottom: 24px;
}

.service-detail-cta {
	position: relative;
	overflow: hidden;
	padding: clamp(78px, 6.5vw, 108px) 0;
	background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
}

.service-detail-cta__panel {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.68fr) minmax(260px, 0.32fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
	overflow: hidden;
	padding: clamp(38px, 5vw, 64px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	background:
		radial-gradient(circle at 88% 18%, rgba(85, 189, 58, 0.22), transparent 28%),
		radial-gradient(circle at 10% 92%, rgba(85, 189, 58, 0.14), transparent 26%),
		linear-gradient(135deg, #041c39 0%, #062d5b 58%, #031b38 100%);
	box-shadow: 0 28px 70px rgba(6, 45, 91, 0.18);
}

.service-detail-cta__panel::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
	background-size: 22px 22px;
	content: "";
	opacity: 0.34;
	pointer-events: none;
}

.service-detail-cta__panel::after {
	position: absolute;
	top: -96px;
	right: -78px;
	width: 230px;
	height: 230px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	content: "";
	filter: blur(2px);
	pointer-events: none;
}

.service-detail-cta__content,
.service-detail-cta__actions {
	position: relative;
	z-index: 1;
	min-width: 0;
}

.service-detail-cta__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.35);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.9);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-cta__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 16px rgba(85, 189, 58, 0.72);
}

.service-detail-cta__context {
	margin: 0 0 12px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.94rem;
	font-weight: 700;
	line-height: 1.4;
}

.service-detail-cta__content h2 {
	max-width: 780px;
	margin: 0;
	color: var(--white);
	font-size: clamp(36px, 4vw, 58px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
	overflow-wrap: anywhere;
}

.service-detail-cta__description {
	max-width: 680px;
	margin-top: 22px;
	color: rgba(255, 255, 255, 0.76);
	font-size: 1rem;
	line-height: 1.72;
}

.service-detail-cta__description p {
	margin: 0;
}

.service-detail-cta__description p + p {
	margin-top: 12px;
}

.service-detail-cta__actions {
	display: grid;
	gap: 14px;
	justify-items: stretch;
}

.service-detail-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 15px 22px;
	border-radius: 8px;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	transition: border-color 260ms ease, background 260ms ease, box-shadow 260ms ease, color 260ms ease, transform 260ms ease;
}

.service-detail-cta__button i {
	font-size: 0.9rem;
	transition: transform 260ms ease;
}

.service-detail-cta__button--primary {
	border: 1px solid rgba(85, 189, 58, 0.72);
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	box-shadow: 0 16px 34px rgba(85, 189, 58, 0.28);
}

.service-detail-cta__button--secondary {
	border: 1px solid rgba(255, 255, 255, 0.24);
	background: rgba(255, 255, 255, 0.07);
	color: var(--white);
}

.service-detail-cta__button:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.75);
	outline-offset: 3px;
}

.service-detail-related {
	position: relative;
	overflow: hidden;
	padding: clamp(82px, 7vw, 112px) 0;
	background:
		radial-gradient(circle at 50% 16%, rgba(85, 189, 58, 0.08), transparent 28%),
		linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

.service-detail-related__heading {
	max-width: 880px;
	margin: 0 auto 48px;
	text-align: center;
}

.service-detail-related__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.76);
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
	color: rgb(6, 45, 91);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
}

.service-detail-related__eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 14px rgba(85, 189, 58, 0.7);
}

.service-detail-offers__eyebrow,
.service-detail-benefits__eyebrow,
.service-detail-process__eyebrow,
.service-detail-faq__eyebrow,
.service-detail-related__eyebrow {
	max-width: 100%;
	font-size: 11px;
	font-weight: 800;
	line-height: 12px;
	letter-spacing: 0.02em;
	white-space: normal;
}

.service-detail-related__heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(38px, 3.8vw, 56px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
}

.service-detail-related__heading h2 span {
	display: block;
}

.service-detail-related__heading h2 span:last-child {
	color: var(--brand-green);
}

.service-detail-related__heading > p {
	max-width: 760px;
	margin: 22px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.08rem);
	line-height: 1.72;
}

.service-detail-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin: 0 auto;
}

.service-detail-related__grid--count-1 {
	max-width: 390px;
	grid-template-columns: minmax(0, 1fr);
}

.service-detail-related__grid--count-2 {
	max-width: 820px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-detail-related-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	padding: 30px;
	border: 1px solid rgba(6, 45, 91, 0.09);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 16px 40px rgba(6, 45, 91, 0.07);
	transition: border-color 260ms ease, box-shadow 260ms ease, transform 260ms ease;
}

.service-detail-related-card__icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 58px;
	height: 58px;
	margin-bottom: 22px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 8px;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green);
	font-size: 1.28rem;
	transition: border-color 260ms ease, background 260ms ease, color 260ms ease, transform 260ms ease;
}

.service-detail-related-card h3 {
	margin: 0 0 13px;
	color: var(--primary-navy);
	font-size: clamp(1.16rem, 1.4vw, 1.34rem);
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.service-detail-related-card p {
	margin: 0 0 24px;
	color: var(--text-muted);
	font-size: 0.96rem;
	line-height: 1.66;
}

.service-detail-related-card__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	color: var(--primary-navy);
	font-size: 0.94rem;
	font-weight: 800;
	text-decoration: none;
	transition: color 260ms ease;
}

.service-detail-related-card__link span,
.service-detail-related__view-all span {
	display: inline-block;
	transition: transform 260ms ease;
}

.service-detail-related__actions {
	display: flex;
	justify-content: center;
	margin-top: 34px;
}

.service-detail-related__view-all {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 46px;
	padding: 13px 20px;
	border: 1px solid rgba(6, 45, 91, 0.12);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.82);
	color: var(--primary-navy);
	font-size: 0.94rem;
	font-weight: 800;
	text-decoration: none;
	box-shadow: 0 12px 28px rgba(6, 45, 91, 0.06);
	transition: border-color 260ms ease, background 260ms ease, color 260ms ease, transform 260ms ease;
}

.service-detail-related-card__link:focus-visible,
.service-detail-related__view-all:focus-visible {
	outline: 2px solid rgba(85, 189, 58, 0.7);
	outline-offset: 3px;
}

@media (hover: hover) {
	.service-detail-offer-card:hover {
		transform: translateY(-5px);
		border-color: rgba(85, 189, 58, 0.42);
		box-shadow: 0 22px 54px rgba(6, 45, 91, 0.12);
	}

	.service-detail-offer-card:hover .service-detail-offer-card__icon {
		transform: scale(1.04);
		border-color: rgba(85, 189, 58, 0.5);
		background: rgba(85, 189, 58, 0.16);
		color: var(--brand-green-dark);
	}

	.service-detail-benefit-item:hover {
		border-color: rgba(85, 189, 58, 0.2);
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.72);
		transform: translateX(4px);
	}

	.service-detail-benefit-item:hover .service-detail-benefit-item__icon {
		transform: scale(1.04);
		border-color: rgba(85, 189, 58, 0.44);
		background: rgba(85, 189, 58, 0.16);
	}

	.service-detail-benefit-item:hover h3 {
		color: var(--brand-green-dark);
	}

	.service-detail-process__step:hover {
		transform: translateY(-4px);
	}

	.service-detail-process__step:hover .service-detail-process__node {
		transform: scale(1.06);
		box-shadow: 0 0 0 1px rgba(85, 189, 58, 0.34), 0 14px 30px rgba(85, 189, 58, 0.22);
	}

	.service-detail-process__step:hover h3 {
		color: var(--brand-green-dark);
	}

	.service-detail-faq__item:not(.is-active):hover {
		border-color: rgba(6, 45, 91, 0.16);
		box-shadow: 0 16px 36px rgba(6, 45, 91, 0.07);
		transform: translateY(-2px);
	}

	.service-detail-faq__support a:hover {
		color: var(--brand-green-dark);
	}

	.service-detail-faq__support a:hover i {
		transform: translateX(3px);
	}

	.service-detail-cta__button:hover,
	.service-detail-cta__button:focus-visible {
		transform: translateY(-3px);
	}

	.service-detail-cta__button:hover i,
	.service-detail-cta__button:focus-visible i {
		transform: translateX(4px);
	}

	.service-detail-cta__button--primary:hover,
	.service-detail-cta__button--primary:focus-visible {
		color: var(--white);
		box-shadow: 0 22px 44px rgba(85, 189, 58, 0.36);
	}

	.service-detail-cta__button--secondary:hover,
	.service-detail-cta__button--secondary:focus-visible {
		border-color: rgba(85, 189, 58, 0.48);
		background: rgba(85, 189, 58, 0.12);
		color: var(--white);
	}

	.service-detail-related-card:hover {
		border-color: rgba(85, 189, 58, 0.42);
		box-shadow: 0 22px 54px rgba(6, 45, 91, 0.12);
		transform: translateY(-4px);
	}

	.service-detail-related-card:hover .service-detail-related-card__icon {
		border-color: rgba(85, 189, 58, 0.58);
		background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
		color: var(--white);
		transform: scale(1.03);
	}

	.service-detail-related-card:hover .service-detail-related-card__link,
	.service-detail-related-card__link:focus-visible,
	.service-detail-related__view-all:hover,
	.service-detail-related__view-all:focus-visible {
		color: var(--brand-green-dark);
	}

	.service-detail-related-card:hover .service-detail-related-card__link span,
	.service-detail-related-card__link:focus-visible span,
	.service-detail-related__view-all:hover span,
	.service-detail-related__view-all:focus-visible span {
		transform: translateX(3px);
	}

	.service-detail-related__view-all:hover,
	.service-detail-related__view-all:focus-visible {
		border-color: rgba(85, 189, 58, 0.32);
		background: var(--white);
		transform: translateY(-2px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.service-detail-process__timeline::after {
		transform: scaleX(1);
		transition: none;
	}

	.service-detail-process__node {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.service-detail-faq__item,
	.service-detail-faq__support a,
	.service-detail-faq__support a i,
	.service-detail-faq__toggle,
	.service-detail-faq__toggle::before,
	.service-detail-faq__toggle::after,
	.service-detail-faq__answer {
		transition: none;
	}

	.service-detail-cta__button,
	.service-detail-cta__button i {
		transition: none;
		transform: none !important;
	}

	.service-detail-related-card,
	.service-detail-related-card__icon,
	.service-detail-related-card__link,
	.service-detail-related-card__link span,
	.service-detail-related__view-all,
	.service-detail-related__view-all span {
		transition: none;
		transform: none !important;
	}
}

@media (max-width: 1024px) {
	.services-page-hero,
	.services-page-hero__inner {
		min-height: 460px;
	}

	.services-page-hero {
		background-image:
			linear-gradient(90deg, rgba(3, 24, 50, 0.98) 0%, rgba(6, 45, 91, 0.94) 42%, rgba(6, 45, 91, 0.62) 76%, rgba(6, 45, 91, 0.28) 100%),
			url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
	}

	.services-page-hero__title {
		font-size: clamp(38px, 5.5vw, 54px);
	}

	.services-page-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.blogs-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.service-detail-hero__inner {
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr);
		gap: 40px;
	}

	.service-detail-hero__title {
		font-size: clamp(38px, 5.4vw, 56px);
	}

	.service-detail-hero__media img {
		min-height: 340px;
	}

	.service-detail-overview__inner {
		grid-template-columns: minmax(300px, 0.46fr) minmax(0, 0.54fr);
		gap: 38px;
	}

	.service-detail-overview__media img {
		min-height: 360px;
	}

	.service-detail-overview__content h2 {
		font-size: clamp(32px, 4vw, 44px);
	}

	.service-detail-offers__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.service-detail-benefits__inner {
		grid-template-columns: minmax(260px, 0.38fr) minmax(0, 0.62fr);
		gap: 38px;
	}

	.service-detail-benefits__content h2 {
		font-size: clamp(32px, 4vw, 44px);
	}

	.service-detail-process__timeline {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 42px;
	}

	.service-detail-process__timeline::before,
	.service-detail-process__timeline::after {
		display: none;
	}

	.service-detail-process__step {
		padding: 24px;
		border: 1px solid rgba(6, 45, 91, 0.1);
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.76);
	}

	.service-detail-faq__inner {
		grid-template-columns: minmax(250px, 0.34fr) minmax(0, 0.66fr);
		gap: 34px;
	}

	.service-detail-faq__content h2 {
		font-size: clamp(32px, 4vw, 44px);
	}

	.service-detail-cta__panel {
		grid-template-columns: minmax(0, 0.64fr) minmax(240px, 0.36fr);
		gap: 32px;
	}

	.service-detail-cta__content h2 {
		font-size: clamp(32px, 4vw, 46px);
	}

	.service-detail-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.service-detail-related__grid--count-1 {
		grid-template-columns: minmax(0, 1fr);
	}

	.service-detail-related__heading h2 {
		font-size: clamp(32px, 4vw, 44px);
	}
}

@media (max-width: 768px) {
	.services-page-hero,
	.services-page-hero__inner {
		min-height: 440px;
	}

	.services-page-hero__inner {
		padding-top: 66px;
		padding-bottom: 66px;
	}

	.services-page-hero__title,
	.services-page-listing__heading h2 {
		font-size: clamp(32px, 7.4vw, 44px);
	}

	.services-page-hero__description,
	.services-page-listing__heading > p {
		font-size: 1rem;
	}

	.services-page-listing {
		padding: 72px 0;
	}

	.blogs-hero__inner {
		min-height: 420px;
		padding-top: 68px;
		padding-bottom: 68px;
	}

	.blogs-hero__title,
	.blogs-listing__heading h2 {
		font-size: clamp(32px, 7.4vw, 44px);
	}

	.blogs-listing {
		padding: 70px 0;
	}

	.blogs-filter {
		padding-bottom: 26px;
	}

	.services-page-tablist {
		width: 100%;
		margin-bottom: 30px;
	}

	.services-page-tab {
		flex: 1 1 0;
		padding-inline: 14px;
		font-size: 0.78rem;
	}

	.services-page-card {
		padding: 26px;
	}

	.blog-card__body {
		padding: 22px;
	}

	.blog-card__meta {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.service-detail-hero {
		padding: 70px 0;
	}

	.service-detail-hero__inner {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.service-detail-hero__title {
		font-size: clamp(34px, 7.4vw, 46px);
	}

	.service-detail-hero__breadcrumb span[aria-current="page"] {
		max-width: 100%;
		white-space: normal;
	}

	.service-detail-hero__media {
		max-width: 680px;
	}

	.service-detail-hero__media img {
		min-height: clamp(300px, 58vw, 420px);
		border-radius: 22px;
	}

	.service-detail-overview {
		padding: 70px 0;
	}

	.service-detail-overview::before {
		display: none;
	}

	.service-detail-overview__inner {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.service-detail-overview__media {
		max-width: 680px;
	}

	.service-detail-overview__media::before {
		inset: -10px auto auto -10px;
		border-radius: 18px;
	}

	.service-detail-overview__media img {
		min-height: clamp(300px, 58vw, 420px);
		border-radius: 22px;
	}

	.service-detail-overview__content h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-offers {
		padding: 70px 0;
	}

	.service-detail-offers__heading h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-offer-card {
		padding: 26px;
	}

	.service-detail-benefits {
		padding: 70px 0;
	}

	.service-detail-benefits__inner {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.service-detail-benefits__content h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-benefit-item {
		grid-template-columns: 52px minmax(0, 1fr) auto;
		gap: 15px;
		padding: 22px 0;
	}

	.service-detail-process {
		padding: 70px 0;
	}

	.service-detail-process__heading h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-process__timeline {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
		padding: 10px 0 0;
	}

	.service-detail-process__step {
		grid-template-columns: 52px minmax(0, 1fr);
		justify-items: start;
		gap: 0 18px;
		padding: 0 0 30px;
		border: 0;
		border-radius: 0;
		background: transparent;
		text-align: left;
	}

	.service-detail-process__step::before {
		position: absolute;
		top: 66px;
		bottom: 0;
		left: 25px;
		width: 2px;
		background: rgba(6, 45, 91, 0.12);
		content: "";
	}

	.service-detail-process__step::after {
		position: absolute;
		top: 66px;
		bottom: 0;
		left: 25px;
		width: 2px;
		background: var(--brand-green);
		content: "";
		transform: scaleY(0);
		transform-origin: top center;
		transition: transform 700ms ease;
		transition-delay: var(--process-delay, 0ms);
	}

	.service-detail-process.is-active .service-detail-process__step::after {
		transform: scaleY(1);
	}

	.service-detail-process__step:last-child {
		padding-bottom: 0;
	}

	.service-detail-process__step:last-child::before,
	.service-detail-process__step:last-child::after {
		display: none;
	}

	.service-detail-process__number {
		grid-column: 1;
		margin: 0 0 9px;
		justify-self: center;
	}

	.service-detail-process__node {
		grid-column: 1;
		grid-row: 2 / span 2;
		width: 34px;
		height: 34px;
		margin: 0;
		justify-self: center;
		border-width: 5px;
	}

	.service-detail-process__step h3,
	.service-detail-process__step p {
		grid-column: 2;
		max-width: 100%;
	}

	.service-detail-faq {
		padding: 70px 0;
	}

	.service-detail-faq__inner {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.service-detail-faq__content {
		position: static;
	}

	.service-detail-faq__content h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-faq__content > p {
		max-width: 680px;
	}

	.service-detail-faq__question {
		min-height: 58px;
	}

	.service-detail-cta {
		padding: 70px 0;
	}

	.service-detail-cta__panel {
		grid-template-columns: 1fr;
		padding: 42px;
	}

	.service-detail-cta__content h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-cta__actions {
		max-width: 360px;
	}

	.service-detail-related {
		padding: 70px 0;
	}

	.service-detail-related__heading h2 {
		font-size: clamp(30px, 6.8vw, 42px);
	}

	.service-detail-related__grid,
	.service-detail-related__grid--count-2 {
		grid-template-columns: 1fr;
		max-width: 520px;
	}

	.service-detail-related-card {
		padding: 26px;
	}
}

@media (max-width: 520px) {
	.services-page-hero,
	.services-page-hero__inner {
		min-height: 420px;
	}

	.services-page-hero {
		background-image:
			linear-gradient(90deg, rgba(3, 24, 50, 0.98) 0%, rgba(6, 45, 91, 0.95) 58%, rgba(6, 45, 91, 0.8) 100%),
			url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
	}

	.services-page-hero::after {
		bottom: 48px;
		width: 180px;
	}

	.services-page-hero__eyebrow,
	.services-page-listing__eyebrow {
		font-size: 0.7rem;
	}

	.services-page-hero__title span,
	.services-page-listing__heading h2 span {
		display: inline;
	}

	.services-page-hero__title span + span::before,
	.services-page-listing__heading h2 span + span::before {
		content: " ";
	}

	.services-page-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.blogs-hero__title span,
	.blogs-listing__heading h2 span {
		display: inline;
	}

	.blogs-hero__title span + span::before,
	.blogs-listing__heading h2 span + span::before {
		content: " ";
	}

	.blogs-filter__nav {
		border-radius: 18px;
	}

	.blogs-filter__link {
		min-height: 38px;
		padding: 10px 14px;
		font-size: 0.76rem;
	}

	.blogs-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.blog-card__body {
		padding: 20px;
	}

	.services-page-card {
		padding: 24px;
	}

	.service-detail-hero {
		padding: 60px 0;
	}

	.service-detail-hero__badge {
		font-size: 0.7rem;
	}

	.service-detail-hero__title {
		font-size: clamp(2.05rem, 8.6vw, 2.7rem);
	}

	.service-detail-hero__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.service-detail-hero__button {
		width: 100%;
		min-height: 48px;
	}

	.service-detail-hero__media::before,
	.service-detail-hero__media::after {
		border-radius: 18px;
	}

	.service-detail-hero__media img {
		min-height: clamp(260px, 68vw, 340px);
		border-radius: 18px;
	}

	.service-detail-overview {
		padding: 60px 0;
	}

	.service-detail-overview__media::before {
		display: none;
	}

	.service-detail-overview__media img {
		min-height: clamp(250px, 68vw, 330px);
		border-radius: 18px;
	}

	.service-detail-overview__badge {
		right: 14px;
		bottom: 14px;
		min-width: 0;
		padding: 12px;
	}

	.service-detail-overview__badge i {
		width: 36px;
		height: 36px;
	}

	.service-detail-overview__badge span {
		font-size: 0.72rem;
	}

	.service-detail-overview__badge strong {
		font-size: 0.88rem;
	}

	.service-detail-overview__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-overview__content h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-overview__points {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.service-detail-offers {
		padding: 60px 0;
	}

	.service-detail-offers__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-offers__heading h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-offers__heading h2 span {
		display: inline;
	}

	.service-detail-offers__heading h2 span + span::before {
		content: " ";
	}

	.service-detail-offers__grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.service-detail-offer-card {
		padding: 24px;
	}

	.service-detail-benefits {
		padding: 60px 0;
	}

	.service-detail-benefits__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-benefits__content h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-benefits__content h2 span {
		display: inline;
	}

	.service-detail-benefits__content h2 span + span::before {
		content: " ";
	}

	.service-detail-benefits__trust {
		display: grid;
		grid-template-columns: 1fr;
		gap: 9px;
	}

	.service-detail-benefit-item {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 14px;
		padding: 20px 0;
	}

	.service-detail-benefit-item__icon {
		width: 46px;
		height: 46px;
		border-radius: 12px;
	}

	.service-detail-benefit-item__number {
		display: none;
	}

	.service-detail-process {
		padding: 60px 0;
	}

	.service-detail-process__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-process__heading h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-process__heading h2 span {
		display: inline;
	}

	.service-detail-process__heading h2 span + span::before {
		content: " ";
	}

	.service-detail-process__step {
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 0 14px;
	}

	.service-detail-process__node {
		width: 31px;
		height: 31px;
	}

	.service-detail-process__step::before,
	.service-detail-process__step::after {
		left: 22px;
	}

	.service-detail-faq {
		padding: 60px 0;
	}

	.service-detail-faq__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-faq__content h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-faq__question {
		gap: 14px;
		min-height: 56px;
		padding: 18px 18px 18px 20px;
		font-size: 1rem;
	}

	.service-detail-faq__toggle {
		width: 34px;
		height: 34px;
	}

	.service-detail-faq__answer p {
		padding-right: 20px;
		padding-left: 20px;
	}

	.service-detail-faq__answer.is-open p:last-child {
		padding-bottom: 20px;
	}

	.service-detail-cta {
		padding: 60px 0;
	}

	.service-detail-cta__panel {
		gap: 28px;
		padding: 30px 22px;
	}

	.service-detail-cta__eyebrow {
		font-size: 11px;
		line-height: 12px;
	}

	.service-detail-cta__context {
		font-size: 0.88rem;
	}

	.service-detail-cta__content h2 {
		font-size: clamp(1.9rem, 8vw, 2.45rem);
	}

	.service-detail-cta__description {
		margin-top: 18px;
		font-size: 0.94rem;
	}

	.service-detail-cta__actions {
		max-width: none;
		gap: 12px;
	}

	.service-detail-cta__button {
		width: 100%;
		min-height: 50px;
	}

	.service-detail-related {
		padding: 60px 0;
	}

	.service-detail-related__eyebrow {
		font-size: 0.7rem;
	}

	.service-detail-related__heading {
		margin-bottom: 34px;
	}

	.service-detail-related__heading h2 {
		font-size: clamp(1.95rem, 8vw, 2.45rem);
	}

	.service-detail-related__heading h2 span {
		display: inline;
	}

	.service-detail-related__heading h2 span + span::before {
		content: " ";
	}

	.service-detail-related-card {
		padding: 24px;
	}

	.service-detail-related-card__icon {
		width: 52px;
		height: 52px;
		margin-bottom: 18px;
	}

	.service-detail-related__view-all {
		width: 100%;
		max-width: 320px;
		min-height: 48px;
	}
}

/* Outsourcing */

.outsourcing-section {
	padding: 112px 0;
	background: linear-gradient(135deg, #ffffff 0%, #f7fbff 100%);
}

.why-choose-header {
	max-width: 900px;
	margin-bottom: clamp(45px, 4vw, 58px);
}

.why-choose-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
	gap: clamp(50px, 4.5vw, 65px);
}

.why-choose-image {
	min-height: 510px;
	overflow: hidden;
	border: 1px solid rgba(10, 47, 91, 0.08);
	border-radius: 20px;
	box-shadow: 0 20px 50px rgba(10, 47, 91, 0.1);
}

.why-choose-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.why-choose-content {
	display: flex;
	flex-direction: column;
	min-height: 510px;
	min-width: 0;
}

.why-choose-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.86);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.why-choose-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.why-choose-header h2 {
	max-width: 900px;
	margin: 0 auto;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.2vw, 48px);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.why-choose-header h2 span {
	color: var(--brand-green);
}

.why-choose-description {
	max-width: 650px;
	margin: 0 0 24px;
	color: var(--text-muted);
	font-size: clamp(1.06rem, 1.25vw, 1.125rem);
	line-height: 1.7;
}

.why-benefits-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	flex: 1 1 auto;
	margin-bottom: 24px;
}

.why-benefit-card {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	height: 100%;
	min-width: 0;
	padding: 23px;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 16px;
	background: var(--white);
	box-shadow: 0 14px 34px rgba(10, 47, 91, 0.06);
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
}

.why-benefit-card:hover {
	border-color: rgba(85, 189, 58, 0.5);
	box-shadow: 0 18px 42px rgba(10, 47, 91, 0.1);
	transform: translateY(-3px);
}

.why-benefit-icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: rgba(82, 196, 62, 0.08);
	color: var(--brand-green-dark);
	font-size: 1.18rem;
	transition: background 300ms ease, color 300ms ease;
}

.why-benefit-card:hover .why-benefit-icon {
	background: var(--brand-green);
	color: var(--white);
}

.why-benefit-card h3 {
	margin: 0 0 7px;
	color: var(--primary-navy);
	font-size: clamp(1.06rem, 1.25vw, 1.18rem);
	font-weight: 700;
	line-height: 1.25;
}

.why-benefit-card p {
	margin: 0;
	color: var(--text-muted);
	font-size: 0.92rem;
	line-height: 1.6;
}

.why-choose-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 50px;
	padding: 15px 24px;
	border-radius: 10px;
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	font-weight: 700;
	box-shadow: 0 14px 30px rgba(85, 189, 58, 0.24);
	transition: transform 300ms ease, box-shadow 300ms ease, filter 300ms ease;
}

.why-choose-cta span {
	display: inline-block;
	transition: transform 300ms ease;
}

.why-choose-cta:hover,
.why-choose-cta:focus-visible {
	outline: 2px solid rgba(85, 189, 58, 0.35);
	outline-offset: 3px;
	color: var(--white);
	filter: brightness(1.03);
	box-shadow: 0 18px 38px rgba(85, 189, 58, 0.3);
	transform: translateY(-2px);
}

.why-choose-cta:hover span,
.why-choose-cta:focus-visible span {
	transform: translateX(3px);
}

/* Team */

.team-section {
	position: relative;
	overflow: hidden;
	padding: 104px 0;
	background:
		radial-gradient(circle at 12% 18%, rgba(98, 181, 229, 0.12), transparent 28%),
		linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

.team-heading {
	max-width: 800px;
	margin-bottom: 48px;
}

.team-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.team-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.team-heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.2vw, 48px);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.team-heading > p:not(.team-eyebrow) {
	max-width: 700px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.team-carousel {
	position: relative;
	padding: 0 12px 46px;
}

.team-carousel__viewport {
	overflow: hidden;
}

.team-carousel__track {
	display: flex;
	gap: 24px;
	will-change: transform;
	transition: transform 640ms ease;
}

.team-card {
	overflow: hidden;
	flex: 0 0 calc((100% - 72px) / 4);
	min-width: 0;
	border: 1px solid rgba(10, 47, 91, 0.08);
	border-radius: 120px 120px 8px 8px;
	background: var(--white);
	box-shadow: 0 15px 35px rgba(10, 47, 91, 0.1);
	transition: transform 350ms ease, box-shadow 350ms ease;
}

.team-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 56px rgba(10, 47, 91, 0.15);
}

.team-photo {
	height: clamp(330px, 24vw, 380px);
	overflow: hidden;
	border-radius: 120px 120px 0 0;
	background: var(--light-blue);
}

.team-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	transition: transform 350ms ease;
}

.team-card:hover .team-photo img {
	transform: scale(1.025);
}

.team-card__body {
	padding: 21px 16px 19px;
	background: var(--primary-navy);
	text-align: center;
}

.team-card h3 {
	margin: 0 0 6px;
	color: var(--white);
	font-size: clamp(1.08rem, 1.4vw, 1.22rem);
	font-weight: 700;
	line-height: 1.2;
}

.team-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	line-height: 1.45;
}

.team-socials {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 16px;
}

.team-socials button {
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	color: var(--white);
	font-size: 0.9rem;
	transition: background 260ms ease, border-color 260ms ease, transform 260ms ease;
}

.team-socials button:hover,
.team-socials button:focus-visible {
	border-color: var(--brand-green);
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-2px);
}

.team-carousel__arrow {
	position: absolute;
	top: calc(50% - 23px);
	z-index: 2;
	display: inline-grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--primary-navy);
	color: var(--white);
	box-shadow: 0 14px 30px rgba(6, 45, 91, 0.18);
	transition: background 260ms ease, transform 260ms ease, box-shadow 260ms ease;
}

.team-carousel__arrow:hover,
.team-carousel__arrow:focus-visible {
	background: var(--brand-green);
	box-shadow: 0 16px 34px rgba(85, 189, 58, 0.25);
	transform: translateY(-2px);
}

.team-carousel__arrow--prev {
	left: -10px;
}

.team-carousel__arrow--next {
	right: -10px;
}

.team-carousel__dots {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	justify-content: center;
	gap: 9px;
}

.team-carousel__dots button {
	width: 9px;
	height: 9px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(6, 45, 91, 0.22);
	transition: width 260ms ease, background 260ms ease;
}

.team-carousel__dots button.is-active {
	width: 24px;
	background: var(--brand-green);
}

/* Testimonials */

.testimonials-section {
	position: relative;
	overflow: hidden;
	padding: 104px 0;
	background:
		radial-gradient(circle at 88% 18%, rgba(85, 189, 58, 0.1), transparent 26%),
		linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

.testimonials-heading {
	max-width: 800px;
	margin-bottom: 48px;
}

.testimonials-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.testimonials-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.testimonials-heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.2vw, 48px);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.testimonials-heading > p:not(.testimonials-eyebrow) {
	max-width: 700px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.testimonials-marquee-wrap {
	display: grid;
	gap: 26px;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.testimonial-track {
	display: flex;
	width: max-content;
	will-change: transform;
	animation-duration: var(--marquee-duration, 44s);
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

.testimonial-marquee:hover .testimonial-track {
	animation-play-state: paused;
}

.testimonial-marquee--left .testimonial-track {
	animation-name: testimonial-marquee-left;
}

.testimonial-marquee--right .testimonial-track {
	animation-name: testimonial-marquee-right;
	--marquee-duration: 48s;
}

.testimonial-group {
	display: flex;
	flex: 0 0 auto;
	gap: 26px;
	padding-right: 26px;
}

.testimonial-card {
	position: relative;
	flex: 0 0 auto;
	width: clamp(430px, 29vw, 520px);
	min-height: 205px;
	padding: 26px;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 20px;
	background: var(--white);
	box-shadow: 0 10px 30px rgba(10, 47, 91, 0.06);
}

.testimonial-card__header {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
}

.testimonial-client {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 13px;
}

.testimonial-client img {
	flex: 0 0 auto;
	width: 52px;
	height: 52px;
	border: 2px solid rgba(85, 189, 58, 0.18);
	border-radius: 50%;
	background: var(--light-blue);
	object-fit: cover;
	object-position: center top;
}

.testimonial-card h3 {
	margin: 0 0 3px;
	color: var(--primary-navy);
	font-size: clamp(1.06rem, 1.2vw, 1.18rem);
	font-weight: 700;
	line-height: 1.25;
}

.testimonial-client p {
	margin: 0;
	color: var(--text-muted);
	font-size: 0.9rem;
	line-height: 1.35;
}

.testimonial-rating {
	display: inline-flex;
	flex: 0 0 auto;
	gap: 3px;
	padding-top: 4px;
	color: var(--brand-green);
	font-size: 0.82rem;
}

.testimonial-quote-icon {
	position: absolute;
	right: 24px;
	bottom: 20px;
	color: rgba(85, 189, 58, 0.1);
	font-size: 2.3rem;
	pointer-events: none;
}

.testimonial-text {
	position: relative;
	z-index: 1;
	margin: 22px 0 0;
	color: var(--text-muted);
	font-size: clamp(0.95rem, 1vw, 1rem);
	line-height: 1.65;
}

@keyframes testimonial-marquee-left {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}

@keyframes testimonial-marquee-right {
	from {
		transform: translateX(-50%);
	}

	to {
		transform: translateX(0);
	}
}

/* Software */

.softwares-section {
	position: relative;
	overflow: hidden;
	padding: 104px 0;
	background: linear-gradient(180deg, #ffffff 0%, #f7faff 50%, #f2f8ff 100%);
}

.softwares-section::before,
.softwares-section::after {
	position: absolute;
	z-index: 0;
	width: 190px;
	height: 190px;
	background-image: radial-gradient(circle, rgba(98, 181, 229, 0.28) 1.5px, transparent 1.5px);
	background-size: 18px 18px;
	content: "";
	opacity: 0.32;
	pointer-events: none;
}

.softwares-section::before {
	top: 130px;
	left: max(20px, calc((100vw - var(--container)) / 2 - 95px));
}

.softwares-section::after {
	right: max(20px, calc((100vw - var(--container)) / 2 - 95px));
	bottom: 90px;
}

.softwares-section .container {
	position: relative;
	z-index: 1;
}

.softwares-heading {
	max-width: 850px;
	margin-bottom: 54px;
}

.softwares-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.softwares-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.softwares-heading h2 {
	max-width: 780px;
	margin: 0 auto;
	color: var(--primary-navy);
	font-size: clamp(42px, 4vw, 62px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: 0;
}

.softwares-heading h2 span {
	color: var(--brand-green);
}

.softwares-heading__accent {
	display: block;
	position: relative;
	width: 72px;
	height: 3px;
	margin: 24px auto 22px;
	border-radius: 999px;
	background: var(--brand-green);
}

.softwares-heading__accent::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 11px;
	height: 11px;
	border: 3px solid #f7faff;
	border-radius: 50%;
	background: var(--brand-green);
	content: "";
	transform: translate(-50%, -50%);
}

.softwares-heading > p:not(.softwares-eyebrow) {
	max-width: 700px;
	margin: 0 auto;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.software-grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr) minmax(48px, 66px)
		minmax(0, 1fr) minmax(48px, 66px)
		minmax(0, 1fr) minmax(48px, 66px)
		minmax(0, 1fr);
	align-items: center;
	max-width: 1400px;
	margin-inline: auto;
}

.software-card {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 300px;
	min-width: 0;
	padding: 32px 24px;
	overflow: hidden;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 20px;
	background: var(--white);
	box-shadow: 0 14px 40px rgba(10, 47, 91, 0.07);
	text-align: center;
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
}

.software-card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: var(--brand-green);
	content: "";
	opacity: 0;
	transition: opacity 300ms ease;
}

.software-card:hover {
	transform: translateY(-5px);
	border-color: rgba(85, 189, 58, 0.36);
	box-shadow: 0 20px 54px rgba(10, 47, 91, 0.12);
}

.software-card:hover::before {
	opacity: 1;
}

.software-card:hover .software-logo-placeholder {
	transform: scale(1.04);
}

.software-logo-placeholder {
	display: grid;
	place-items: center;
	width: 100px;
	height: 100px;
	margin-bottom: 24px;
	border: 1px solid rgba(10, 47, 91, 0.08);
	border-radius: 50%;
	background: #f7fbff;
	color: var(--primary-navy);
	font-size: 1.35rem;
	font-weight: 900;
	box-shadow: inset 0 0 0 7px rgba(255, 255, 255, 0.9), 0 12px 26px rgba(10, 47, 91, 0.08);
	transition: transform 300ms ease;
}

.software-logo-placeholder img {
	width: 72%;
	height: 72%;
	object-fit: contain;
}

.software-card h3 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(1.25rem, 1.45vw, 1.38rem);
	font-weight: 700;
	line-height: 1.25;
}

.software-card__accent {
	width: 36px;
	height: 3px;
	margin: 14px auto 13px;
	border-radius: 999px;
	background: var(--brand-green);
}

.software-card p {
	max-width: 210px;
	margin: 0;
	color: var(--text-muted);
	font-size: clamp(0.95rem, 1vw, 1rem);
	line-height: 1.6;
}

.software-connector {
	position: relative;
	z-index: 1;
	height: 38px;
}

.software-connector::before {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	height: 2px;
	background: #b9dcf3;
	content: "";
	transform: translateY(-50%);
}

.software-connector__node {
	position: absolute;
	top: 50%;
	left: 50%;
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border: 1px solid #b9dcf3;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 8px 20px rgba(10, 47, 91, 0.08);
	transform: translate(-50%, -50%);
}

.software-connector__node::after {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: var(--brand-green);
	content: "";
}

/* Process and Exhibitions */

.process-section {
	position: relative;
	overflow: hidden;
	padding: 104px 0;
	background: linear-gradient(135deg, #ffffff 0%, #f5faff 50%, #f5fff7 100%);
}

.process-section::before,
.process-section::after {
	position: absolute;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	content: "";
	filter: blur(70px);
	opacity: 0.16;
	pointer-events: none;
}

.process-section::before {
	top: 110px;
	left: -170px;
	background: rgba(98, 181, 229, 0.28);
}

.process-section::after {
	right: -190px;
	bottom: 100px;
	background: rgba(85, 189, 58, 0.22);
}

.process-section .container {
	position: relative;
	z-index: 1;
}

.process-heading {
	max-width: 820px;
	margin-bottom: 54px;
}

.process-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.process-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.process-heading h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 3.2vw, 48px);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: 0;
}

.process-heading__accent {
	display: block;
	width: 72px;
	height: 3px;
	margin: 22px auto 20px;
	border-radius: 999px;
	background: var(--brand-green);
}

.process-heading > p:not(.process-eyebrow) {
	max-width: 700px;
	margin: 0 auto;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.process-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.process-grid::before {
	position: absolute;
	top: 62px;
	right: 7%;
	left: 7%;
	height: 2px;
	background: linear-gradient(90deg, transparent 0%, rgba(98, 181, 229, 0.34) 10%, rgba(98, 181, 229, 0.34) 90%, transparent 100%);
	content: "";
	pointer-events: none;
}

.process-grid::after {
	position: absolute;
	top: 56px;
	left: 7%;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 0 8px rgba(85, 189, 58, 0.12);
	content: "";
	animation: process-pulse-path 12s linear infinite;
	pointer-events: none;
}

.process-card {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	min-height: 420px;
	padding: 30px;
	overflow: hidden;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 16px 45px rgba(10, 47, 91, 0.06);
	animation: process-card-active 12s ease-in-out infinite;
	animation-delay: var(--process-delay);
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
}

.process-card:nth-child(2),
.process-card:nth-child(6) {
	background: rgba(247, 251, 255, 0.94);
}

.process-card:nth-child(3),
.process-card:nth-child(4) {
	background: rgba(246, 255, 248, 0.94);
}

.process-card:hover {
	border-color: rgba(85, 189, 58, 0.45);
	box-shadow: 0 20px 50px rgba(10, 47, 91, 0.1);
	transform: translateY(-5px);
}

.process-card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}

.process-step-badge {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.1);
	color: var(--brand-green-dark);
	font-size: 0.88rem;
	font-weight: 800;
	animation: process-badge-active 12s ease-in-out infinite;
	animation-delay: var(--process-delay);
	transition: background 300ms ease, color 300ms ease;
}

.process-card:hover .process-step-badge {
	background: var(--brand-green);
	color: var(--white);
}

.process-card__icon {
	color: rgba(6, 45, 91, 0.2);
	font-size: 1.65rem;
}

.process-card h3 {
	margin: 0 0 12px;
	color: var(--primary-navy);
	font-size: clamp(1.3rem, 1.7vw, 1.48rem);
	font-weight: 700;
	line-height: 1.22;
}

.process-card > p {
	margin: 0;
	color: var(--text-muted);
	font-size: 0.98rem;
	line-height: 1.7;
}

.process-visual {
	margin-top: auto;
	padding-top: 26px;
}

.process-chart {
	position: relative;
	height: 108px;
	overflow: hidden;
	padding: 14px 16px 12px;
	border: 1px solid rgba(10, 47, 91, 0.07);
	border-radius: 16px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(244, 250, 255, 0.95));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.process-chart__grid {
	position: absolute;
	inset: 14px 16px 12px;
	background:
		linear-gradient(rgba(10, 47, 91, 0.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(10, 47, 91, 0.035) 1px, transparent 1px);
	background-size: 100% 24px, 42px 100%;
}

.process-chart__bars {
	position: absolute;
	right: 24px;
	bottom: 16px;
	left: 24px;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	align-items: end;
	gap: clamp(12px, 2vw, 20px);
	height: 72px;
}

.process-chart__bars span {
	display: block;
	height: var(--bar-height);
	border-radius: 999px 999px 3px 3px;
	background: linear-gradient(180deg, rgba(98, 181, 229, 0.46), rgba(98, 181, 229, 0.16));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
	transform: scaleY(0.18);
	transform-origin: bottom;
	animation: process-bar-grow 5s ease-in-out infinite;
	animation-delay: calc(var(--bar-delay) + 0.1s);
}

.process-chart__point {
	fill: var(--brand-green);
	stroke: var(--white);
	stroke-width: 2.5;
	opacity: 0;
	transform-box: fill-box;
	transform-origin: center;
	animation: process-point-pop 5s ease-in-out infinite;
	animation-delay: var(--point-delay);
}

.process-chart__point--final {
	animation-name: process-point-pop, process-point-pulse;
	animation-duration: 5s, 1.8s;
	animation-delay: var(--point-delay), 2.7s;
}

.process-chart svg {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.process-chart path {
	fill: none;
	stroke-linecap: round;
	stroke-width: 5;
}

.process-chart__base {
	stroke: rgba(6, 45, 91, 0.13);
}

.process-chart__line {
	stroke: var(--brand-green);
	stroke-dasharray: 250;
	stroke-dashoffset: 250;
	animation: process-line-draw 5s ease-in-out infinite;
}

.process-checklist {
	display: grid;
	gap: 10px;
}

.process-checklist div,
.process-support div {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	padding: 11px 12px;
	overflow: hidden;
	border: 1px solid rgba(10, 47, 91, 0.07);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.64);
	color: var(--primary-navy);
	font-size: 0.86rem;
	line-height: 1.25;
}

.process-checklist div {
	grid-template-columns: auto minmax(0, 1fr) minmax(48px, 0.5fr) auto;
	animation: process-workflow-row 6s ease-in-out infinite;
	animation-delay: var(--workflow-delay);
}

.process-checklist i,
.process-support i,
.process-security i {
	color: var(--brand-green);
}

.process-checklist i {
	opacity: 0.35;
	transform: scale(0.86);
	animation: process-check-pop 6s ease-in-out infinite;
	animation-delay: var(--workflow-delay);
}

.process-checklist b {
	position: relative;
	height: 5px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(98, 181, 229, 0.15);
}

.process-checklist b span {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--brand-green), #8cdd7a);
	transform: scaleX(0);
	transform-origin: left;
	animation: process-workflow-fill 6s ease-in-out infinite;
	animation-delay: var(--workflow-delay);
}

.process-checklist strong {
	color: rgba(61, 166, 42, 0.45);
	font-size: 0.78rem;
	animation: process-status-text 6s ease-in-out infinite;
	animation-delay: var(--workflow-delay);
}

.process-ring {
	position: relative;
	--process-ring-angle: 270deg;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 132px;
	height: 132px;
	margin-inline: auto;
	border: 1px solid rgba(98, 181, 229, 0.2);
	border-radius: 50%;
	background:
		radial-gradient(circle, rgba(85, 189, 58, 0.13) 0 47%, transparent 48%),
		conic-gradient(var(--brand-green) 0deg var(--process-ring-angle), rgba(98, 181, 229, 0.16) var(--process-ring-angle) 360deg);
	box-shadow: inset 0 0 0 12px rgba(255, 255, 255, 0.84);
	animation: process-ring-glow 5s ease-in-out infinite;
}

.process-ring::before,
.process-ring::after,
.process-ring__orbit {
	position: absolute;
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.process-ring::before {
	inset: 10px;
	border: 1px solid rgba(85, 189, 58, 0.16);
}

.process-ring::after {
	inset: -7px;
	border: 1px dashed rgba(98, 181, 229, 0.34);
	opacity: 0.75;
}

.process-ring__orbit {
	inset: 24px;
	border: 1px solid rgba(85, 189, 58, 0.11);
}

.process-ring strong {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	min-width: 54px;
	min-height: 32px;
	color: var(--primary-navy);
	font-size: 1.7rem;
	line-height: 1;
}

.process-ring > span:not(.process-ring__orbit) {
	position: relative;
	z-index: 1;
	margin-top: 7px;
	color: var(--text-muted);
	font-size: 0.82rem;
}

.process-security {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 11px;
	overflow: visible;
	text-align: center;
}

.process-security__icon {
	display: grid;
	flex: 0 0 100%;
	place-items: center;
	position: relative;
	width: 132px;
	height: 132px;
	margin: -4px auto 8px;
	overflow: visible;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.96) 0 33%, rgba(85, 189, 58, 0.1) 34% 53%, transparent 54%);
	color: var(--brand-green);
	font-size: 2rem;
}

.process-security__icon span {
	position: absolute;
	inset: 10px;
	border: 1px solid rgba(85, 189, 58, 0.18);
	border-radius: 50%;
	animation: process-security-ring 4.8s ease-in-out infinite;
}

.process-security__icon span:nth-child(2) {
	inset: 25px;
	border-color: rgba(98, 181, 229, 0.22);
	animation-delay: 0.7s;
}

.process-security__icon span:nth-child(3) {
	inset: 40px;
	border-color: rgba(85, 189, 58, 0.16);
	animation-delay: 1.4s;
}

.process-security__icon i {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: var(--white);
	box-shadow: 0 10px 24px rgba(10, 47, 91, 0.08);
	animation: process-lock-glow 3.6s ease-in-out infinite;
}

.process-security__icon b {
	position: absolute;
	z-index: 1;
	top: 25px;
	bottom: 25px;
	left: 50%;
	width: 2px;
	border-radius: 999px;
	background: linear-gradient(180deg, transparent, rgba(85, 189, 58, 0.42), transparent);
	animation: process-scan-line 3.6s ease-in-out infinite;
}

.process-security > div:not(.process-security__icon) {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px 10px;
	border: 1px solid rgba(10, 47, 91, 0.07);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.68);
	color: var(--primary-navy);
	font-size: 0.82rem;
	animation: process-security-badge 4.8s ease-in-out infinite;
	animation-delay: var(--security-delay);
}

.process-quality {
	display: grid;
	gap: 13px;
}

.process-quality div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px 12px;
	align-items: center;
	color: var(--primary-navy);
	font-size: 0.88rem;
}

.process-quality strong {
	color: var(--brand-green-dark);
	font-size: 0.82rem;
}

.process-quality i {
	position: relative;
	grid-column: 1 / -1;
	height: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(98, 181, 229, 0.16);
}

.process-quality i::before {
	display: block;
	width: var(--quality-width);
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--brand-green), #88d977);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	animation: process-quality-fill 6s ease-in-out infinite;
	animation-delay: var(--quality-delay);
}

.process-quality i::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -35%;
	width: 35%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.58), transparent);
	content: "";
	animation: process-quality-shimmer 6s ease-in-out infinite;
	animation-delay: calc(var(--quality-delay) + 1s);
}

.process-support {
	position: relative;
	display: grid;
	gap: 10px;
}

.process-support div {
	grid-template-columns: auto minmax(0, 1fr) auto;
	animation: process-support-row 4.8s ease-in-out infinite;
	animation-delay: var(--support-delay);
}

.process-support div b {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.38);
	box-shadow: 0 0 0 0 rgba(85, 189, 58, 0.16);
	animation: process-support-dot 4.8s ease-in-out infinite;
	animation-delay: var(--support-delay);
}

@keyframes process-card-active {
	0%,
	14% {
		border-color: rgba(85, 189, 58, 0.45);
		box-shadow: 0 20px 50px rgba(10, 47, 91, 0.1), 0 0 0 4px rgba(85, 189, 58, 0.06);
		transform: translateY(-3px);
	}

	20%,
	100% {
		border-color: rgba(10, 47, 91, 0.1);
		box-shadow: 0 16px 45px rgba(10, 47, 91, 0.06);
		transform: translateY(0);
	}
}

@keyframes process-card-active-mobile {
	0%,
	14% {
		border-color: rgba(85, 189, 58, 0.45);
		box-shadow: 0 18px 42px rgba(10, 47, 91, 0.09), 0 0 0 4px rgba(85, 189, 58, 0.06);
	}

	20%,
	100% {
		border-color: rgba(10, 47, 91, 0.1);
		box-shadow: 0 16px 45px rgba(10, 47, 91, 0.06);
	}
}

@keyframes process-badge-active {
	0%,
	14% {
		background: var(--brand-green);
		color: var(--white);
	}

	20%,
	100% {
		background: rgba(85, 189, 58, 0.1);
		color: var(--brand-green-dark);
	}
}

@keyframes process-pulse-path {
	0% {
		left: 7%;
		opacity: 0;
	}

	8%,
	88% {
		opacity: 1;
	}

	100% {
		left: calc(93% - 14px);
		opacity: 0;
	}
}

@keyframes process-line-draw {
	0% {
		stroke-dashoffset: 250;
	}

	48%,
	82% {
		stroke-dashoffset: 0;
	}

	100% {
		stroke-dashoffset: -250;
	}
}

@keyframes process-bar-grow {
	0%,
	10% {
		opacity: 0.62;
		transform: scaleY(0.18);
	}

	34%,
	82% {
		opacity: 1;
		transform: scaleY(1);
	}

	100% {
		opacity: 0.62;
		transform: scaleY(0.18);
	}
}

@keyframes process-point-pop {
	0%,
	15% {
		opacity: 0;
		transform: scale(0.65);
	}

	25%,
	82% {
		opacity: 1;
		transform: scale(1);
	}

	100% {
		opacity: 0;
		transform: scale(0.65);
	}
}

@keyframes process-point-pulse {
	0%,
	100% {
		filter: drop-shadow(0 0 0 rgba(85, 189, 58, 0));
	}

	50% {
		filter: drop-shadow(0 0 7px rgba(85, 189, 58, 0.35));
	}
}

@keyframes process-workflow-row {
	0%,
	14% {
		background: rgba(255, 255, 255, 0.64);
		border-color: rgba(10, 47, 91, 0.07);
	}

	22%,
	70% {
		background: rgba(85, 189, 58, 0.07);
		border-color: rgba(85, 189, 58, 0.18);
	}

	100% {
		background: rgba(255, 255, 255, 0.64);
		border-color: rgba(10, 47, 91, 0.07);
	}
}

@keyframes process-check-pop {
	0%,
	16% {
		opacity: 0.35;
		transform: scale(0.86);
	}

	24%,
	72% {
		opacity: 1;
		transform: scale(1);
	}

	100% {
		opacity: 0.35;
		transform: scale(0.86);
	}
}

@keyframes process-workflow-fill {
	0%,
	18% {
		transform: scaleX(0);
	}

	42%,
	74% {
		transform: scaleX(1);
	}

	100% {
		transform: scaleX(0);
	}
}

@keyframes process-status-text {
	0%,
	18% {
		color: rgba(61, 166, 42, 0.45);
	}

	28%,
	74% {
		color: var(--brand-green-dark);
	}

	100% {
		color: rgba(61, 166, 42, 0.45);
	}
}

@keyframes process-security-ring {
	0%,
	100% {
		opacity: 0.42;
		transform: scale(0.94);
	}

	50% {
		opacity: 0.95;
		transform: scale(1.04);
	}
}

@keyframes process-lock-glow {
	0%,
	100% {
		box-shadow: 0 10px 24px rgba(10, 47, 91, 0.08), 0 0 0 0 rgba(85, 189, 58, 0);
	}

	50% {
		box-shadow: 0 12px 26px rgba(10, 47, 91, 0.1), 0 0 0 8px rgba(85, 189, 58, 0.08);
	}
}

@keyframes process-scan-line {
	0%,
	100% {
		opacity: 0;
		transform: translateX(-28px);
	}

	35%,
	68% {
		opacity: 1;
	}

	80% {
		opacity: 0;
		transform: translateX(28px);
	}
}

@keyframes process-security-badge {
	0%,
	16% {
		background: rgba(255, 255, 255, 0.68);
		border-color: rgba(10, 47, 91, 0.07);
	}

	28%,
	74% {
		background: rgba(85, 189, 58, 0.08);
		border-color: rgba(85, 189, 58, 0.2);
	}

	100% {
		background: rgba(255, 255, 255, 0.68);
		border-color: rgba(10, 47, 91, 0.07);
	}
}

@keyframes process-quality-fill {
	0%,
	14% {
		transform: scaleX(0);
	}

	44%,
	78% {
		transform: scaleX(1);
	}

	100% {
		transform: scaleX(0);
	}
}

@keyframes process-quality-shimmer {
	0%,
	42% {
		opacity: 0;
		transform: translateX(0);
	}

	55%,
	78% {
		opacity: 1;
	}

	100% {
		opacity: 0;
		transform: translateX(420%);
	}
}

@keyframes process-support-row {
	0%,
	16% {
		background: rgba(255, 255, 255, 0.64);
		border-color: rgba(10, 47, 91, 0.07);
	}

	28%,
	76% {
		background: rgba(85, 189, 58, 0.07);
		border-color: rgba(85, 189, 58, 0.18);
	}

	100% {
		background: rgba(255, 255, 255, 0.64);
		border-color: rgba(10, 47, 91, 0.07);
	}
}

@keyframes process-support-dot {
	0%,
	16% {
		background: rgba(85, 189, 58, 0.38);
		box-shadow: 0 0 0 0 rgba(85, 189, 58, 0.16);
	}

	28%,
	76% {
		background: var(--brand-green);
		box-shadow: 0 0 0 7px rgba(85, 189, 58, 0.1);
	}

	100% {
		background: rgba(85, 189, 58, 0.38);
		box-shadow: 0 0 0 0 rgba(85, 189, 58, 0.16);
	}
}

@keyframes process-ring-glow {
	0%,
	100% {
		filter: saturate(1);
		transform: scale(1);
	}

	64%,
	82% {
		filter: saturate(1.2);
		transform: scale(1.025);
	}
}

@keyframes process-status-pulse {
	0%,
	100% {
		opacity: 0.72;
		transform: scale(0.9);
	}

	50% {
		opacity: 1;
		transform: scale(1);
	}
}

.events-section {
	position: relative;
	overflow: hidden;
	padding: 104px 0 100px;
	background: linear-gradient(180deg, #ffffff 0%, #f9fcff 100%);
}

.events-header {
	max-width: 900px;
	margin-bottom: 36px;
}

.events-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.events-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.events-header h2 {
	max-width: 880px;
	margin: 0 auto;
	color: var(--primary-navy);
	font-size: clamp(38px, 4vw, 58px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0;
}

.events-header h2 span {
	color: var(--brand-green);
}

.events-header > p:not(.events-eyebrow) {
	max-width: 750px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.events-tabs-wrap {
	display: grid;
	grid-template-columns: 38px minmax(0, auto) 38px;
	align-items: center;
	justify-content: center;
	gap: 18px;
	margin-bottom: 54px;
}

.events-tabs {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(22px, 2.8vw, 40px);
	min-width: 0;
	padding-bottom: 10px;
}

/*.events-tabs::after {*/
/*	position: absolute;*/
/*	right: 0;*/
/*	bottom: 0;*/
/*	left: 0;*/
/*	height: 1px;*/
/*	background: rgba(10, 47, 91, 0.12);*/
/*	content: "";*/
/*}*/

.events-tab {
	position: relative;
	z-index: 1;
	flex: 0 0 auto;
	padding: 0 0 12px;
	border: 0;
	background: transparent;
	color: var(--text-muted);
	font-size: 0.95rem;
	font-weight: 700;
	white-space: nowrap;
	transition: color 220ms ease;
}

.events-tab::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 2px;
	border-radius: 999px;
	background: var(--brand-green);
	content: "";
	opacity: 0;
	transform: scaleX(0.55);
	transition: opacity 220ms ease, transform 220ms ease;
}

.events-tab:hover,
.events-tab:focus-visible,
.events-tab.is-active {
	color: var(--brand-green-dark);
}

.events-tab.is-active::after {
	opacity: 1;
	transform: scaleX(1);
}

.events-tabs-arrow {
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid rgba(10, 47, 91, 0.08);
	border-radius: 50%;
	background: #f3f8fc;
	color: var(--primary-navy);
	box-shadow: 0 10px 24px rgba(10, 47, 91, 0.06);
	transition: background 220ms ease, color 220ms ease, transform 220ms ease;
}

.events-tabs-arrow--next {
	background: var(--primary-navy);
	color: var(--white);
}

.events-tabs-arrow:hover,
.events-tabs-arrow:focus-visible {
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-2px);
}

.events-gallery-wrap {
	width: 100%;
	overflow: hidden;
}

.events-panel[hidden] {
	display: none;
}

.events-gallery-viewport {
	overflow: hidden;
	padding: 6px 0 18px;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}

.events-gallery-track {
	display: flex;
	width: max-content;
	will-change: transform;
	animation: events-gallery-marquee 34s linear infinite;
}

.events-gallery-viewport:hover .events-gallery-track {
	animation-play-state: paused;
}

.events-gallery-group {
	display: flex;
	flex: 0 0 auto;
	align-items: flex-start;
	gap: 28px;
	padding-right: 28px;
}

.events-gallery-item {
	flex: 0 0 auto;
	width: clamp(260px, 19vw, 320px);
	margin: 0;
	transition: transform 280ms ease, filter 280ms ease;
}

.events-gallery-item--tall {
	height: clamp(340px, 27vw, 390px);
}

.events-gallery-item--short {
	height: clamp(340px, 27vw, 390px);
	margin-top: 42px;
}

.events-gallery-item img {
	width: 100%;
	height: 100%;
	border-radius: 22px;
	object-fit: cover;
	object-position: center;
	transition: transform 280ms ease;
}

.events-gallery-item:hover img {
	transform: translateY(-4px) scale(1.01);
}

@keyframes events-gallery-marquee {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(-50%, 0, 0);
	}
}

/* FAQ */

.faq-section {
	position: relative;
	overflow: hidden;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 50%, #ffffff 100%);
}

.faq-header {
	max-width: 760px;
}

.faq-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	margin: 0 0 18px;
	border: 1px solid rgba(85, 189, 58, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--primary-navy);
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.1;
	text-transform: uppercase;
	box-shadow: 0 10px 28px rgba(6, 45, 91, 0.06);
}

.faq-eyebrow span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brand-green);
}

.faq-header h2 {
	margin: 0;
	color: var(--primary-navy);
	font-size: clamp(36px, 4vw, 54px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0;
}

.faq-header > p:not(.faq-eyebrow) {
	max-width: 680px;
	margin: 18px auto 0;
	color: var(--text-muted);
	font-size: clamp(1rem, 1.15vw, 1.06rem);
	line-height: 1.7;
}

.faq-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	align-items: start;
}

.faq-item {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(10, 47, 91, 0.1);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 10px 30px rgba(10, 47, 91, 0.045);
	transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease, background 300ms ease;
}

.faq-item::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 3px;
	background: var(--brand-green);
	content: "";
	opacity: 0;
	transition: opacity 300ms ease;
}

.faq-item.is-active {
	border-color: rgba(85, 189, 58, 0.3);
	background: rgba(248, 255, 249, 0.92);
	box-shadow: 0 14px 35px rgba(10, 47, 91, 0.07);
}

.faq-item.is-active::before {
	opacity: 1;
}

@media (hover: hover) {
	.faq-item:not(.is-active):hover {
		border-color: rgba(10, 47, 91, 0.16);
		box-shadow: 0 13px 32px rgba(10, 47, 91, 0.06);
		transform: translateY(-2px);
	}

	.faq-item:not(.is-active):hover .faq-toggle {
		background: rgba(85, 189, 58, 0.14);
	}
}

.faq-item h3 {
	margin: 0;
}

.faq-question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	gap: 18px;
	padding: 22px 24px;
	border: 0;
	background: transparent;
	color: var(--primary-navy);
	font-size: clamp(1.06rem, 1.25vw, 1.13rem);
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

.faq-question span {
	flex: 1 1 auto;
	min-width: 0;
	padding-right: 8px;
}

.faq-toggle {
	position: relative;
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(85, 189, 58, 0.2);
	border-radius: 50%;
	background: rgba(85, 189, 58, 0.09);
	color: var(--brand-green-dark);
	transition: background 300ms ease, border-color 300ms ease, transform 300ms ease;
}

.faq-toggle::before,
.faq-toggle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	border-radius: 999px;
	background: currentColor;
	content: "";
	transform: translate(-50%, -50%);
}

.faq-toggle::after {
	transform: translate(-50%, -50%) rotate(90deg);
	transition: transform 300ms ease;
}

.faq-question[aria-expanded="true"] .faq-toggle {
	border-color: var(--brand-green);
	background: var(--brand-green);
	color: var(--white);
	transform: rotate(180deg);
}

.faq-question[aria-expanded="true"] .faq-toggle::after {
	transform: translate(-50%, -50%) rotate(0);
}

.faq-answer {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 360ms ease;
}

.faq-answer.is-open {
	grid-template-rows: 1fr;
}

.faq-answer p {
	overflow: hidden;
	margin: 0;
	padding: 0 24px;
	color: var(--text-muted);
	font-size: clamp(0.95rem, 1vw, 1rem);
	line-height: 1.7;
	opacity: 0;
	transform: translateY(-4px);
	transition: padding 360ms ease, opacity 280ms ease, transform 280ms ease;
}

.faq-answer.is-open p {
	padding-bottom: 24px;
	opacity: 1;
	transform: translateY(0);
}

/* Footer */

.site-footer {
	background: #041c39;
	color: rgba(255, 255, 255, 0.74);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-grid {
	display: grid;
	grid-template-columns: 1.35fr 0.8fr 1fr 1.25fr 1.15fr;
	gap: clamp(34px, 3.4vw, 52px);
	align-items: start;
	padding: 76px 0 52px;
}

.footer-column {
	min-width: 0;
}

.site-footer .brand-name,
.site-footer .footer-column h2 {
	color: var(--white);
}

.site-footer .brand-tagline {
	margin: 8px 0 0;
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.88rem;
	font-weight: 700;
}

.footer-column h2 {
	margin: 0 0 20px;
	font-size: clamp(1.12rem, 1.2vw, 1.22rem);
	font-weight: 700;
	line-height: 1.25;
}

.footer-column p {
	margin: 16px 0 22px;
	font-size: 0.94rem;
	line-height: 1.7;
	text-align: left;
}

.footer-brand p:not(.brand-tagline) {
	max-width: 390px;
}

.footer-list,
.footer-menu {
	display: grid;
	gap: 11px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.footer-list a,
.footer-menu a,
.footer-bottom a {
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.94rem;
	line-height: 1.6;
	transition: color 220ms ease;
}

.footer-list a:hover,
.footer-list a:focus-visible,
.footer-menu a:hover,
.footer-menu a:focus-visible,
.site-footer .primary-menu a:hover,
.site-footer .primary-menu a:focus-visible,
.footer-contact__item a:hover,
.footer-contact__item a:focus-visible,
.footer-bottom a:hover {
	color: var(--brand-green);
}

.site-footer a:focus-visible,
.newsletter-form input:focus-visible,
.newsletter-form button:focus-visible {
	outline: 2px solid rgba(85, 189, 58, 0.75);
	outline-offset: 3px;
}

.footer-logo,
.site-footer .custom-logo-link {
	display: inline-flex;
	align-items: center;
	width: min(170px, 100%);
}

.footer-logo img,
.site-footer .custom-logo {
	display: block;
	width: 100%;
	height: auto;
	max-height: 100px;
	object-fit: contain;
}

.footer-links a,
.footer-services a,
.footer-menu a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.footer-links a::before,
.footer-services a::before,
.footer-menu a::before {
	color: var(--brand-green);
	font-family: "Font Awesome 6 Free";
	font-size: 0.72rem;
	font-weight: 900;
	content: "\f105";
	transition: transform 220ms ease;
}

.footer-links a:hover::before,
.footer-links a:focus-visible::before,
.footer-services a:hover::before,
.footer-services a:focus-visible::before,
.footer-menu a:hover::before,
.footer-menu a:focus-visible::before {
	transform: translateX(3px);
}

.footer-social {
	display: flex;
	flex-wrap: wrap;
	gap: 11px;
}

.site-footer .footer-social a {
	width: 36px;
	height: 36px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.04);
	color: var(--white);
	font-size: 0.9rem;
	text-transform: none;
	transition: transform 220ms ease, background 220ms ease, border-color 220ms ease, color 220ms ease;
}

.site-footer .footer-social a:hover,
.site-footer .footer-social a:focus-visible {
	border-color: var(--brand-green);
	background: var(--brand-green);
	color: var(--white);
	transform: translateY(-2px);
}

.footer-contact {
	display: grid;
	gap: 15px;
	margin: 0;
	font-style: normal;
}

.footer-contact__item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	min-width: 0;
}

.footer-contact__item > i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 18px;
	width: 18px;
	margin-top: 4px;
	color: var(--brand-green);
	font-size: 0.95rem;
}

.footer-contact__item div {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.footer-contact__item strong {
	color: var(--white);
	font-size: 0.9rem;
	line-height: 1.4;
}

.footer-contact__item span,
.footer-contact__item a {
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.92rem;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.newsletter-form {
	display: grid;
	gap: 10px;
}

.newsletter-message {
	margin: 0 0 10px;
	padding: 10px 12px;
	border-radius: 12px;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.45;
}

.newsletter-message--success {
	border: 1px solid rgba(85, 189, 58, 0.28);
	background: rgba(85, 189, 58, 0.12);
	color: rgba(255, 255, 255, 0.92);
}

.newsletter-message--error {
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(180, 35, 24, 0.18);
	color: rgba(255, 255, 255, 0.94);
}

.newsletter-honeypot {
	position: absolute;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.newsletter-form input {
	width: 100%;
	min-height: 48px;
	padding: 12px 15px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: var(--white);
	font: inherit;
	transition: border-color 220ms ease, background 220ms ease;
}

.newsletter-form input::placeholder {
	color: rgba(255, 255, 255, 0.56);
}

.newsletter-form input:focus-visible {
	border-color: rgba(85, 189, 58, 0.85);
	background: rgba(255, 255, 255, 0.11);
}

.newsletter-form button {
	min-height: 48px;
	border: 0;
	border-radius: 999px;
	background: var(--brand-green);
	color: var(--white);
	font: inherit;
	font-weight: 900;
	cursor: pointer;
	transition: transform 220ms ease, background 220ms ease;
}

.newsletter-form button:hover,
.newsletter-form button:focus-visible {
	background: var(--brand-green-dark);
	transform: translateY(-1px);
}

.footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-bottom__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 72px;
}

.footer-bottom p {
	margin: 0;
}

.footer-bottom div {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

.back-to-top {
	position: fixed;
	right: clamp(16px, 2.4vw, 28px);
	bottom: clamp(16px, 2.4vw, 28px);
	z-index: 900;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border: 0;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--brand-green), var(--brand-green-dark));
	color: var(--white);
	box-shadow: 0 18px 38px rgba(85, 189, 58, 0.28);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(12px);
	transition: opacity 180ms ease, visibility 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

.back-to-top:hover,
.back-to-top:focus-visible {
	box-shadow: 0 20px 42px rgba(85, 189, 58, 0.34);
	outline: 3px solid rgba(85, 189, 58, 0.22);
	outline-offset: 3px;
	transform: translateY(-2px);
}

.back-to-top i {
	font-size: 0.95rem;
	line-height: 1;
	pointer-events: none;
}

/* Default content templates */

.contact-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(70px, 6vw, 104px) 0;
	background:
		radial-gradient(circle at 16% 28%, rgba(85, 189, 58, 0.28), transparent 28%),
		radial-gradient(circle at 84% 20%, rgba(98, 181, 229, 0.2), transparent 30%),
		linear-gradient(135deg, #062d5b 0%, #083b72 58%, #05264d 100%);
	color: var(--white);
}

.contact-hero::before,
.contact-hero::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}

.contact-hero::before {
	inset: auto -12% -44% 52%;
	height: 420px;
	background: rgba(85, 189, 58, 0.13);
	filter: blur(12px);
}

.contact-hero::after {
	top: 18%;
	left: -110px;
	width: 260px;
	height: 260px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.04);
}

.contact-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 850px;
}

.contact-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 18px;
	padding: 8px 14px;
	border: 1px solid rgba(85, 189, 58, 0.34);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	color: var(--white);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	line-height: 13px;
	text-transform: uppercase;
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.12);
}

.contact-hero__eyebrow span {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--brand-green);
	box-shadow: 0 0 0 6px rgba(85, 189, 58, 0.12);
}

.contact-hero__title {
	margin: 0;
	color: var(--white);
	font-size: clamp(2.45rem, 4.1vw, 4.05rem);
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: 0;
}

.contact-hero__title span {
	display: block;
}

.contact-hero__title span:last-child {
	color: var(--brand-green);
}

.contact-hero__description {
	max-width: 680px;
	margin: 20px 0 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: clamp(1rem, 1.35vw, 1.18rem);
	line-height: 1.75;
}

.contact-hero__breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 24px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	font-weight: 800;
}

.contact-hero__breadcrumb a {
	color: var(--white);
	text-decoration: none;
	transition: color 180ms ease;
}

.contact-hero__breadcrumb a:hover,
.contact-hero__breadcrumb a:focus-visible {
	color: var(--brand-green);
	outline: none;
}

.contact-hero__breadcrumb span[aria-hidden="true"] {
	color: var(--brand-green);
}

.page-shell {
	padding: 90px 0;
	background: var(--soft-background);
}

.content-card {
	padding: clamp(28px, 5vw, 54px);
	border: 1px solid var(--border-light);
	border-radius: var(--radius-lg);
	background: var(--white);
	box-shadow: var(--shadow-soft);
}

.entry-title {
	margin-top: 0;
	color: var(--primary-navy);
	line-height: 1.15;
}

.entry-meta,
.entry-summary,
.entry-content {
	color: var(--text-muted);
}

.not-found {
	text-align: center;
}

/* Contact form */

.actaxcloud-contact-form-wrap {
	margin-top: clamp(26px, 4vw, 38px);
}

.actaxcloud-contact-form {
	display: grid;
	gap: 20px;
}

.actaxcloud-contact-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 20px;
}

.actaxcloud-contact-form__field {
	display: grid;
	gap: 8px;
	margin: 0;
}

.actaxcloud-contact-form__field label {
	color: var(--primary-navy);
	font-size: 0.94rem;
	font-weight: 800;
}

.actaxcloud-contact-form__field label span {
	color: var(--brand-green);
}

.actaxcloud-contact-form__field input,
.actaxcloud-contact-form__field select,
.actaxcloud-contact-form__field textarea {
	width: 100%;
	min-height: 52px;
	padding: 14px 16px;
	border: 1px solid var(--border-light);
	border-radius: 14px;
	background: #ffffff;
	color: var(--primary-navy);
	font: inherit;
	box-shadow: 0 10px 26px rgba(6, 45, 91, 0.05);
	transition: border-color 200ms ease, box-shadow 200ms ease;
}

.actaxcloud-contact-form__field select {
	padding-right: 48px;
	appearance: none;
	background-image:
		linear-gradient(45deg, transparent 50%, var(--primary-navy) 50%),
		linear-gradient(135deg, var(--primary-navy) 50%, transparent 50%);
	background-position:
		calc(100% - 22px) 50%,
		calc(100% - 16px) 50%;
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
}

.actaxcloud-contact-form__field textarea {
	min-height: 150px;
	resize: vertical;
}

.actaxcloud-contact-form__field input:focus-visible,
.actaxcloud-contact-form__field select:focus-visible,
.actaxcloud-contact-form__field textarea:focus-visible {
	border-color: rgba(85, 189, 58, 0.72);
	box-shadow: 0 0 0 4px rgba(85, 189, 58, 0.14);
	outline: none;
}

.actaxcloud-contact-form__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: 52px;
	padding: 14px 24px;
	border: 0;
	border-radius: 999px;
	appearance: none;
	background: var(--brand-green);
	color: var(--white) !important;
	font-size: 0.96rem;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	-webkit-text-fill-color: var(--white);
	box-shadow: 0 16px 32px rgba(85, 189, 58, 0.22);
	cursor: pointer;
	transition: transform 220ms ease, background 220ms ease, box-shadow 220ms ease;
}

.actaxcloud-contact-form__submit:hover,
.actaxcloud-contact-form__submit:focus-visible {
	background: var(--brand-green-dark);
	box-shadow: 0 18px 36px rgba(85, 189, 58, 0.27);
	transform: translateY(-1px);
}

.actaxcloud-form-alert {
	margin-bottom: 22px;
	padding: 16px 18px;
	border-radius: 14px;
	font-weight: 700;
}

.actaxcloud-form-alert ul {
	margin: 8px 0 0 20px;
	padding: 0;
}

.actaxcloud-form-alert--success {
	border: 1px solid rgba(85, 189, 58, 0.28);
	background: rgba(85, 189, 58, 0.1);
	color: var(--primary-navy);
}

.actaxcloud-form-alert--error {
	border: 1px solid rgba(180, 35, 24, 0.22);
	background: rgba(180, 35, 24, 0.08);
	color: #7a271a;
}

.actaxcloud-contact-form__hidden {
	position: absolute;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* Motion */

.reveal-on-scroll {
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 520ms ease, transform 520ms ease;
}

.reveal-on-scroll.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Responsive */

@media (max-width: 1199px) {
	.team-card {
		flex-basis: calc((100% - 22px) / 2);
	}

	.team-carousel__track {
		gap: 22px;
	}
}

@media (max-width: 1180px) {
	.main-header__inner {
		gap: 18px;
	}

	.primary-menu {
		gap: 18px;
	}

	.nav-logo {
		width: 116px;
	}

	.header-cta {
		padding-inline: 14px;
		font-size: 0.82rem;
	}

	.footer-grid {
		grid-template-columns: 1.25fr 0.9fr 1fr;
		gap: 36px;
	}

	.footer-brand {
		grid-column: 1 / -1;
	}

	.footer-brand p:not(.brand-tagline) {
		max-width: 760px;
	}

	.about-hero {
		background-position: 58% center;
	}

	.about-hero-content {
		width: min(100%, 820px);
	}

	.about-intro-grid {
		grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
		gap: 40px;
	}

	.about-intro-title {
		font-size: clamp(34px, 3.7vw, 48px);
	}

	.about-intro-image-wrap,
	.about-intro-image-wrap img {
		min-height: 460px;
	}

	.about-foundation-card {
		padding: 28px 24px;
	}

	.about-foundation-card__icon {
		width: 52px;
		height: 52px;
	}

	.about-expertise__stats {
		gap: 22px;
		max-width: 1000px;
	}

	.about-expertise__stats::before,
	.about-expertise__stats::after {
		top: 75px;
	}

	.about-expertise__progress {
		width: 150px;
	}

	.about-expertise__progress-center {
		width: 94px;
		height: 94px;
	}

	.about-client-trust__grid {
		grid-template-columns: minmax(0, 0.46fr) minmax(0, 0.54fr);
		gap: 40px;
	}

	.about-client-trust__title {
		font-size: clamp(38px, 3.8vw, 44px);
	}

	.about-client-trust__testimonial {
		min-height: 400px;
		padding: 34px;
	}

	.about-client-trust__slides {
		min-height: 300px;
	}

	.about-technology__panel {
		max-width: 1000px;
	}

	.about-technology__item {
		padding-inline: 18px;
	}

	.about-final-cta__panel {
		grid-template-columns: minmax(0, 0.62fr) minmax(280px, 0.38fr);
		gap: 32px;
	}

	.about-final-cta__title {
		font-size: clamp(2.25rem, 4vw, 3.2rem);
	}
}

@media (max-width: 1024px) {
	.top-bar .container {
		width: min(100% - 24px, var(--container));
	}

	.top-bar__inner {
		gap: 14px;
	}

	.top-bar__contact {
		flex: 1 1 auto;
		gap: 14px;
	}

	.top-bar__link {
		gap: 6px;
		font-size: 0.77rem;
	}

	.top-bar__icon {
		width: 16px;
		height: 16px;
	}

	.top-bar__social {
		gap: 10px;
		display: none;
	}

	.top-bar__social a {
		width: 20px;
		height: 20px;
	}

	.top-bar__social-icon {
		width: 17px;
		height: 17px;
	}

	.menu-toggle {
		display: inline-block;
		margin-left: auto;
	}

	.primary-navigation {
		position: absolute;
		top: calc(100% + 10px);
		right: 0;
		left: 0;
		display: block;
		max-height: calc(100vh - 110px);
		padding: 18px;
		overflow-y: auto;
		border: 1px solid var(--border-light);
		border-radius: 8px;
		background: var(--white);
		box-shadow: var(--shadow-hover);
		opacity: 0;
		pointer-events: none;
		transform: translateY(-12px);
		transition: opacity 180ms ease, transform 180ms ease;
	}

	.primary-navigation.is-open {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	.primary-menu {
		display: grid;
		gap: 0;
	}

	.primary-navigation .primary-menu a {
		display: block;
		padding: 13px 6px;
		font-size: 0.9rem;
	}

	.primary-navigation .primary-menu a::after {
		display: none;
	}

	.header-cta {
		display: none;
	}

	.mobile-menu-cta {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 44px;
		margin-top: 12px;
		padding: 12px 18px;
		font-size: 0.9rem;
	}

	.hero-slider {
		min-height: 630px;
	}

	.hero-controls {
		top: auto;
		right: 14px;
		bottom: 76px;
		left: 14px;
		transform: none;
	}

	.slider-arrow {
		width: 42px;
		height: 42px;
	}

	.hero-slide__inner {
		min-height: 630px;
		padding-top: 48px;
		padding-bottom: 128px;
	}

	.hero-content {
		width: min(100%, 620px);
	}

	.hero-slide__visual {
		background-position: 58% center;
	}

	.counter-panel {
		grid-template-columns: repeat(3, 1fr);
		padding: 12px;
	}

	.about-hero,
	.about-hero-inner {
		min-height: 500px;
	}

	.about-hero {
		background-image:
			linear-gradient(90deg, rgba(3, 24, 50, 0.97) 0%, rgba(6, 45, 91, 0.93) 34%, rgba(6, 45, 91, 0.62) 62%, rgba(6, 45, 91, 0.2) 100%),
			url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
		background-position: 60% center;
	}

	.about-hero-title {
		font-size: clamp(40px, 5.5vw, 56px);
	}

	.about-hero-description {
		max-width: 600px;
	}

	.about-intro-section {
		padding: 82px 0;
	}

	.about-intro-grid {
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr);
		gap: 34px;
	}

	.about-intro-point {
		grid-template-columns: 48px minmax(0, 1fr) 38px;
		gap: 14px;
		padding: 22px 12px 22px 0;
	}

	.about-intro-point__number {
		width: 40px;
		height: 40px;
	}

	.about-intro-point > i {
		width: 38px;
		height: 38px;
	}

	.about-intro-image-wrap,
	.about-intro-image-wrap img {
		min-height: 420px;
	}

	.about-foundation-section {
		padding: 0;
	}

	.about-foundation-header {
		margin-bottom: 34px;
	}

	.about-foundation-title {
		font-size: clamp(2rem, 3.5vw, 2.55rem);
	}

	.about-expertise {
		padding: 72px 0;
	}

	.about-expertise__header {
		margin-bottom: 34px;
	}

	.about-expertise__title {
		font-size: clamp(2rem, 3.5vw, 2.55rem);
	}

	.about-expertise__stats {
		gap: 18px;
	}

	.about-expertise__progress {
		width: clamp(132px, 13vw, 148px);
	}

	.about-foundation-grid {
		gap: 20px;
	}

	.about-foundation-card {
		border-radius: 18px;
		padding: 26px 20px;
	}

	.about-foundation-card--vision {
		transform: translateY(-16px);
	}

	.counter-item::after {
		display: none;
	}

	.faq-grid {
		grid-template-columns: 1fr;
	}

	.services-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.why-choose-grid {
		gap: 40px;
	}

	.why-choose-image,
	.why-choose-content {
		min-height: 500px;
	}

	.why-choose-header h2 {
		font-size: clamp(34px, 3.8vw, 44px);
	}

	.why-benefit-card {
		padding: 20px;
	}

	.software-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.software-connector {
		display: none;
	}

	.process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.process-grid::before,
	.process-grid::after {
		display: none;
	}

	.events-section {
		padding: 82px 0;
	}

	.events-tabs-wrap {
		grid-template-columns: 38px minmax(0, 1fr) 38px;
	}

	.events-tabs {
		justify-content: flex-start;
		gap: 28px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.events-tabs::-webkit-scrollbar {
		display: none;
	}

	.events-gallery-track {
		animation-duration: 40s;
	}

	.events-gallery-group {
		gap: 22px;
		padding-right: 22px;
	}

	.events-gallery-item {
		width: clamp(230px, 31vw, 280px);
	}

	.events-gallery-item--tall {
		height: clamp(310px, 42vw, 350px);
	}

	.events-gallery-item--short {
		height: clamp(310px, 42vw, 350px);
		margin-top: 28px;
	}
}

@media (max-width: 900px) {
	.about-intro-grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.about-intro-content {
		max-width: 760px;
	}

	.about-intro-title,
	.about-intro-lead {
		max-width: 720px;
	}

	.about-intro-media {
		max-width: 680px;
	}

	.about-intro-image-wrap,
	.about-intro-image-wrap img {
		min-height: clamp(360px, 62vw, 480px);
	}

	.about-foundation-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.about-foundation-card--vision {
		transform: none;
	}

	.about-foundation-card--values {
		grid-column: 1 / -1;
	}

	.about-foundation-card--values p {
		max-width: 860px;
	}

	.about-foundation-trust {
		margin-top: 34px;
	}

	.about-expertise__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: 560px;
		gap: 30px 24px;
	}

	.about-expertise__stats::before,
	.about-expertise__stats::after {
		display: none;
	}

	.about-expertise__progress {
		width: 156px;
	}

	.about-client-trust__grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.about-client-trust__content {
		max-width: 720px;
	}

	.about-client-trust__testimonial-wrap {
		max-width: 760px;
	}
}

@media (max-width: 768px) {
	:root {
		--top-bar-sticky-offset: 94px;
	}

	.contact-hero {
		padding: 58px 0 62px;
	}

	.contact-hero__inner {
		max-width: 100%;
	}

	.contact-hero__title {
		font-size: clamp(2rem, 7vw, 3rem);
	}

	.actaxcloud-contact-form__grid {
		grid-template-columns: 1fr;
	}

	.actaxcloud-contact-form__submit {
		width: 100%;
	}

	.container {
		width: min(100% - 28px, var(--container));
	}

	.section {
		padding: 72px 0;
	}

	.section-heading {
		margin-bottom: 34px;
	}

	.services-section {
		padding: 98px 0 82px;
	}

	.services-heading {
		margin-bottom: 28px;
	}

	.services-heading h2 {
		font-size: clamp(2rem, 6vw, 2.55rem);
	}

	.about-expertise {
		padding: 64px 0;
	}

	.about-expertise__header {
		margin-bottom: 28px;
	}

	.about-expertise__title {
		font-size: clamp(2rem, 6vw, 2.55rem);
	}

	.about-expertise__trust {
		align-items: flex-start;
		border-radius: 18px;
		text-align: left;
		white-space: normal;
	}

	.about-client-trust {
		padding: 78px 0;
	}

	.about-client-trust__grid {
		gap: 34px;
	}

	.about-client-trust__testimonial {
		padding: 30px;
	}

	.about-client-trust__slides {
		min-height: 292px;
	}

	.about-client-trust__slide blockquote p {
		font-size: clamp(17px, 1.6vw, 18px);
	}

	.about-client-trust {
		padding: 68px 0;
	}

	.about-client-trust__title {
		font-size: clamp(2rem, 6.5vw, 2.55rem);
	}

	.about-client-trust__title span {
		white-space: normal;
	}

	.about-client-trust__testimonial-wrap::before {
		right: -8px;
	}

	.about-client-trust__profile {
		align-items: flex-start;
		flex-direction: column;
	}

	.about-technology {
		padding: 76px 0;
	}

	.about-technology__header {
		margin-bottom: 34px;
	}

	.about-technology__title {
		font-size: clamp(2rem, 5.5vw, 2.65rem);
	}

	.about-technology__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.about-technology__item {
		padding: 34px 22px;
	}

	.about-technology__item:not(:last-child)::after {
		display: none;
	}

	.about-technology__item:nth-child(odd)::after {
		position: absolute;
		top: 24px;
		right: 0;
		bottom: 24px;
		display: block;
		width: 1px;
		background: linear-gradient(180deg, transparent, rgba(6, 45, 91, 0.1), transparent);
		content: "";
	}

	.about-technology__item:nth-child(-n + 2)::before {
		position: absolute;
		right: 24px;
		bottom: 0;
		left: 24px;
		height: 1px;
		background: linear-gradient(90deg, transparent, rgba(6, 45, 91, 0.1), transparent);
		content: "";
	}

	.about-final-cta {
		padding: 0 0 76px;
	}

	.about-final-cta__panel {
		grid-template-columns: 1fr;
		padding: 42px;
	}

	.about-final-cta__content {
		max-width: 760px;
	}

	.about-final-cta__trust {
		max-width: 520px;
	}

	.services-tablist {
		margin-bottom: 32px;
	}

	.top-bar__inner {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		min-height: 0;
		gap: 7px;
		padding: 8px 0 9px;
	}

	.top-bar__contact {
		justify-content: center;
		width: 100%;
		gap: 7px 16px;
	}

	.top-bar__social {
		justify-content: center;
		width: 100%;
		gap: 10px;
		display: none;
	}

	.top-bar__link {
		justify-content: center;
		font-size: 0.78rem;
		white-space: normal;
		text-align: center;
	}

	.top-bar__contact > .top-bar__link:first-child {
		flex-basis: auto;
	}

	.main-header__inner {
		min-height: 74px;
	}

	.nav-logo {
		width: 108px;
	}

	.brand-mark {
		width: 46px;
		height: 46px;
		border-radius: 8px;
	}

	.brand-name {
		font-size: 1rem;
	}

	.brand-tagline {
		max-width: 170px;
		font-size: 0.67rem;
	}

	.hero-slider {
		min-height: 660px;
	}

	.hero-slide__inner {
		align-items: start;
		min-height: 660px;
		padding-top: 78px;
		padding-bottom: 128px;
	}

	.hero-slide__visual {
		background-position: 58% center;
	}

	.hero-title {
		font-size: clamp(2rem, 8vw, 2.7rem);
	}

	.hero-copy {
		max-width: 100%;
	}

	.hero-controls {
		inset: auto 10px 68px;
		transform: none;
	}

	.hero-dots {
		bottom: 118px;
	}

	.about-hero,
	.about-hero-inner {
		min-height: 480px;
	}

	.about-hero {
		background-image:
			linear-gradient(90deg, rgba(3, 24, 50, 0.98) 0%, rgba(6, 45, 91, 0.94) 42%, rgba(6, 45, 91, 0.72) 74%, rgba(6, 45, 91, 0.44) 100%),
			url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
		background-position: 62% center;
	}

	.about-hero::after {
		left: 14px;
		height: 132px;
	}

	.about-hero-inner {
		padding-top: 70px;
		padding-bottom: 70px;
	}

	.about-hero-content {
		padding-left: 18px;
	}

	.about-hero-title {
		font-size: clamp(34px, 7.2vw, 46px);
		line-height: 1.1;
	}

	.about-hero-title-white {
		white-space: normal;
	}

	.about-hero-description {
		max-width: 100%;
		font-size: 1rem;
	}

	.about-hero-breadcrumb {
		font-size: 0.88rem;
	}

	.about-intro-section {
		padding: 70px 0;
	}

	.about-intro-title {
		font-size: clamp(2rem, 7.6vw, 2.65rem);
		overflow-wrap: normal;
	}

	.about-intro-title span {
		display: inline;
	}

	.about-intro-title span + span::before {
		content: " ";
	}

	.about-intro-lead {
		margin-bottom: 28px;
		font-size: 1rem;
	}

	.about-intro-point {
		grid-template-columns: 44px minmax(0, 1fr);
		gap: 14px;
		padding: 20px 0;
	}

	.about-intro-point > i {
		display: none;
	}

	.about-intro-point__number {
		width: 38px;
		height: 38px;
		font-size: 0.82rem;
	}

	.about-intro-point p {
		font-size: 0.92rem;
	}

	.about-intro-image-wrap {
		border-radius: 18px;
	}

	.about-intro-image-wrap::before {
		inset: -10px auto auto -8px;
		border-radius: 18px;
	}

	.about-intro-image-wrap,
	.about-intro-image-wrap img {
		min-height: clamp(320px, 68vw, 420px);
	}

	.about-intro-image-wrap img {
		border-radius: 18px;
	}

	.about-intro-experience {
		bottom: 16px;
		left: 16px;
		min-width: 136px;
		padding: 14px 16px;
		border-radius: 14px;
	}

	.about-foundation-section {
		padding: 0;
	}

	.about-foundation-header {
		margin-bottom: 28px;
		text-align: center;
	}

	.about-foundation-title {
		font-size: clamp(2rem, 6vw, 2.55rem);
	}

	.about-foundation-title span {
		display: block;
	}

	.about-foundation-title span + span::before {
		content: none;
	}

	.about-foundation-header > p {
		margin-inline: 0;
		font-size: 1rem;
	}

	.about-foundation-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.about-foundation-card,
	.about-foundation-card--vision,
	.about-foundation-card--values {
		grid-column: auto;
		transform: none;
	}

	.about-foundation-card {
		padding: 24px 22px;
		border-radius: 18px;
	}

	.about-foundation-card__top {
		margin-bottom: 22px;
	}

	.about-foundation-card__icon {
		width: 48px;
		height: 48px;
		font-size: 1.15rem;
	}

	.about-foundation-card p {
		font-size: 0.93rem;
	}

	.about-foundation-trust {
		justify-content: flex-start;
		gap: 12px;
		margin-top: 24px;
		padding: 14px;
	}

	.about-foundation-trust span {
		flex: 1 1 145px;
	}

	.counter-wrap {
		margin-top: -34px;
	}

	.counter-panel {
		border-radius: 8px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.counter-item {
		align-items: flex-start;
		justify-content: flex-start;
		padding: 20px 16px;
	}

	.services-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}

	.service-card {
		min-height: 0;
		padding: 26px;
	}

	.outsourcing-section {
		padding: 86px 0;
	}

	.why-choose-grid {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.why-choose-image {
		height: clamp(340px, 52vw, 430px);
		min-height: 0;
	}

	.why-choose-content {
		max-width: none;
		min-height: 0;
	}

	.why-choose-description {
		max-width: none;
	}

	.team-section {
		padding: 84px 0;
	}

	.footer-grid {
		grid-template-columns: 1fr 1fr;
		padding-top: 58px;
	}

	.footer-brand {
		grid-column: 1 / -1;
	}

	.footer-bottom__inner {
		flex-direction: column;
		justify-content: center;
		padding: 18px 0;
		text-align: center;
	}
}

@media (max-width: 767px) {
	.footer-grid {
		grid-template-columns: 1fr;
		gap: 34px;
		padding: 56px 0 42px;
	}

	.footer-brand {
		grid-column: auto;
	}

	.footer-brand p:not(.brand-tagline) {
		max-width: none;
	}

	.footer-bottom__inner {
		align-items: flex-start;
		text-align: left;
	}

	.footer-bottom div {
		justify-content: flex-start;
	}

	.events-section {
		padding: 68px 0;
	}

	.events-header {
		margin-bottom: 30px;
	}

	.events-header h2 {
		font-size: clamp(2.2rem, 9vw, 2.85rem);
	}

	.events-tabs-wrap {
		/*grid-template-columns: 38px minmax(0, 1fr) 38px;*/
		grid-template-columns: auto;
		gap: 10px;
		margin-bottom: 34px;
	}

	.events-tabs {
		gap: 22px;
		overflow-x: auto;
		white-space: nowrap;
		scrollbar-width: none;
	}

	.events-tabs::-webkit-scrollbar {
		display: none;
	}

	.events-tab {
		font-size: 0.88rem;
	}

	.events-gallery-viewport {
		padding-bottom: 10px;
		-webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
		mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
	}

	.events-gallery-track {
		animation-duration: 46s;
	}

	.events-gallery-group {
		gap: 18px;
		padding-right: 18px;
	}

	.events-gallery-item {
		width: min(82vw, 340px);
	}

	.events-gallery-item--tall {
		height: clamp(300px, 92vw, 360px);
	}

	.events-gallery-item--short {
		height: clamp(300px, 92vw, 360px);
		margin-top: 20px;
	}

	.process-section {
		padding: 70px 0;
	}

	.process-heading {
		margin-bottom: 38px;
	}

	.process-heading h2 {
		font-size: clamp(2rem, 8vw, 2.45rem);
	}

	.process-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.process-card {
		min-height: 0;
		padding: 24px;
		animation-name: process-card-active-mobile;
	}

	.process-card:hover {
		transform: none;
	}

	.softwares-section {
		padding: 70px 0;
	}

	.softwares-section::before,
	.softwares-section::after {
		opacity: 0.12;
		transform: scale(0.72);
	}

	.softwares-heading {
		margin-bottom: 38px;
	}

	.softwares-heading h2 {
		font-size: clamp(2.15rem, 9vw, 2.75rem);
	}

	.softwares-heading__accent {
		margin-top: 20px;
		margin-bottom: 18px;
	}

	.software-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.software-card {
		min-height: 260px;
		padding: 28px 22px;
	}

	.software-logo-placeholder {
		width: 86px;
		height: 86px;
		margin-bottom: 20px;
	}

	.testimonials-section {
		padding: 72px 0;
	}

	.testimonials-heading {
		margin-bottom: 38px;
	}

	.testimonials-marquee-wrap {
		gap: 20px;
		-webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
		mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
	}

	.testimonial-track {
		--marquee-duration: 52s;
	}

	.testimonial-marquee--right .testimonial-track {
		--marquee-duration: 56s;
	}

	.testimonial-group {
		gap: 18px;
		padding-right: 18px;
	}

	.testimonial-card {
		width: min(330px, calc(100vw - 40px));
		min-height: 210px;
		padding: 20px;
		border-radius: 18px;
	}

	.testimonial-card__header {
		gap: 12px;
	}

	.testimonial-client {
		gap: 11px;
	}

	.testimonial-client img {
		width: 44px;
		height: 44px;
	}

	.testimonial-card h3 {
		font-size: 1rem;
	}

	.testimonial-client p,
	.testimonial-text {
		font-size: 0.9rem;
	}

	.testimonial-rating {
		font-size: 0.72rem;
	}

	.testimonial-quote-icon {
		right: 18px;
		bottom: 16px;
		font-size: 1.9rem;
	}

	.team-section {
		padding: 70px 0;
	}

	.team-heading {
		margin-bottom: 38px;
	}

	.team-carousel {
		padding: 0 0 88px;
	}

	.team-carousel__viewport {
		width: min(100%, 390px);
		margin-inline: auto;
	}

	.team-carousel__track {
		gap: 18px;
	}

	.team-card {
		flex-basis: 100%;
		border-radius: 110px 110px 8px 8px;
	}

	.team-photo {
		height: clamp(300px, 78vw, 360px);
		border-radius: 110px 110px 0 0;
	}

	.team-carousel__arrow {
		top: auto;
		bottom: 28px;
		width: 46px;
		height: 46px;
		transform: none;
	}

	.team-carousel__arrow:hover,
	.team-carousel__arrow:focus-visible {
		transform: translateY(-2px);
	}

	.team-carousel__arrow--prev {
		left: calc(50% - 58px);
	}

	.team-carousel__arrow--next {
		right: calc(50% - 58px);
	}
}

@media (max-width: 520px) {
	:root {
		--top-bar-sticky-offset: 126px;
	}

	.contact-hero {
		padding: 46px 0 50px;
	}

	.contact-hero__eyebrow {
		margin-bottom: 14px;
	}

	.contact-hero__title {
		font-size: clamp(1.85rem, 9vw, 2.45rem);
	}

	.contact-hero__description {
		margin-top: 16px;
		font-size: 0.96rem;
		line-height: 1.65;
	}

	.contact-hero__breadcrumb {
		margin-top: 20px;
		font-size: 0.84rem;
	}

	.back-to-top {
		width: 44px;
		height: 44px;
	}

	.section-heading h2,
	.split-content h2 {
		font-size: 2rem;
	}

	.top-bar__inner {
		gap: 7px;
		padding: 7px 0 8px;
	}


    .top-bar__contact {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 40px !important;
    }


	.top-bar__contact {
		flex-direction: column;
		gap: 5px;
	}

	.top-bar__social {
		gap: 10px;
	}

	.top-bar__link {
		max-width: 100%;
		font-size: 0.76rem;
		line-height: 1.25;
	}

	.top-bar__icon {
		width: 15px;
		height: 15px;
	}

	.top-bar__social a {
		width: 20px;
		height: 20px;
	}

	.top-bar__social-icon {
		width: 17px;
		height: 17px;
	}

	.brand-copy {
		max-width: 190px;
	}

	.nav-logo {
		width: 100px;
	}

	.hero-eyebrow {
		font-size: 0.68rem;
	}

	.hero-slide__inner {
		padding-top: 68px;
		padding-bottom: 126px;
	}

	.hero-title {
		font-size: clamp(2rem, 8.4vw, 2.55rem);
	}

	.hero-actions {
		align-items: stretch;
		flex-direction: column;
		width: 100%;
		max-width: 330px;
	}

	.hero-btn {
		width: 100%;
		min-height: 48px;
	}

	.hero-copy {
		font-size: 1rem;
	}

	.about-hero,
	.about-hero-inner {
		min-height: 460px;
	}

	.about-hero {
		background-image:
			linear-gradient(90deg, rgba(3, 24, 50, 0.98) 0%, rgba(6, 45, 91, 0.95) 56%, rgba(6, 45, 91, 0.78) 100%),
			url("../images/live/ChatGPT-Image-Aug-4-2026-03_37_16-PM.png");
		background-position: 66% center;
	}

	.about-hero-eyebrow {
		margin-bottom: 18px;
		font-size: 0.69rem;
	}

	.about-hero-title {
		font-size: clamp(2.05rem, 9vw, 2.6rem);
	}

	.hero-slide__visual {
		background-position: 54% center;
	}

	.slider-arrow {
		width: 38px;
		height: 38px;
		font-size: 1.55rem;
	}

	.software-grid,
	.footer-grid {
		grid-template-columns: 1fr;
	}

	.softwares-section {
		padding: 68px 0;
	}

	.softwares-section::before,
	.softwares-section::after {
		opacity: 0.12;
		transform: scale(0.72);
	}

	.softwares-heading {
		margin-bottom: 36px;
	}

	.softwares-heading h2 {
		font-size: clamp(2.15rem, 9vw, 2.75rem);
	}

	.softwares-heading__accent {
		margin-top: 20px;
		margin-bottom: 18px;
	}

	.software-grid {
		gap: 20px;
	}

	.software-card {
		min-height: 260px;
		padding: 28px 22px;
	}

	.software-logo-placeholder {
		width: 86px;
		height: 86px;
		margin-bottom: 20px;
	}

	.team-section {
		padding: 68px 0;
	}

	.team-heading {
		margin-bottom: 36px;
	}

	.team-heading h2 {
		font-size: clamp(2rem, 8vw, 2.45rem);
	}

	.counter-panel {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.counter-icon {
		width: 46px;
		height: 46px;
	}

	.counter-item strong {
		font-size: 1.55rem;
	}

	.counter-item small {
		font-size: 0.66rem;
	}

	.service-card {
		min-height: 0;
		padding: 24px;
	}

	.services-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.services-tablist {
		flex-wrap: wrap;
		width: 100%;
	}

	.services-tab {
		flex: 1 1 0;
		padding-inline: 14px;
		font-size: 0.78rem;
	}

	.faq-header {
		max-width: 100%;
	}

	.faq-header h2 {
		font-size: clamp(2rem, 8vw, 2.45rem);
	}

	.faq-grid {
		gap: 14px;
	}

	.faq-item {
		border-radius: 14px;
	}

	.faq-question {
		gap: 14px;
		padding: 18px 18px 18px 20px;
		font-size: 1rem;
	}

	.faq-question span {
		padding-right: 0;
	}

	.faq-toggle {
		width: 34px;
		height: 34px;
	}

	.faq-answer p {
		padding-right: 20px;
		padding-left: 20px;
	}

	.faq-answer.is-open p {
		padding-bottom: 20px;
	}

	.about-intro-section {
		padding: 62px 0;
	}

	.about-intro-content,
	.about-intro-media {
		width: 100%;
		max-width: 340px;
	}

	.about-intro-eyebrow {
		font-size: 0.7rem;
	}

	.about-intro-title {
		font-size: clamp(1.95rem, 8.8vw, 2.35rem);
		overflow-wrap: anywhere;
	}

	.about-intro-point h3 {
		font-size: 0.96rem;
	}

	.about-intro-experience {
		right: 14px;
		left: 14px;
		min-width: 0;
	}

	.about-foundation-section {
		padding: 0;
	}

	.about-foundation-title {
		font-size: clamp(1.86rem, 8vw, 2.1rem);
		overflow-wrap: anywhere;
	}

	.about-foundation-card {
		padding: 22px 18px;
	}

	.about-foundation-card h3 {
		font-size: 1.18rem;
	}

	.about-foundation-card p,
	.about-foundation-header > p {
		font-size: 0.9rem;
	}

	.about-foundation-trust span {
		flex-basis: 100%;
	}

	.about-expertise {
		padding: 56px 0;
	}

	.about-expertise__title {
		font-size: clamp(1.86rem, 8vw, 2.1rem);
		overflow-wrap: anywhere;
	}

	.about-expertise__header > p {
		font-size: 0.9rem;
	}

	.about-expertise__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px 14px;
	}

	.about-expertise__progress {
		width: clamp(124px, 38vw, 142px);
		margin-bottom: 14px;
	}

	.about-expertise__progress-center {
		width: 82px;
		height: 82px;
		box-shadow: inset 0 0 0 5px rgba(247, 250, 255, 0.85);
	}

	.about-expertise__progress-center strong {
		font-size: 1.55rem;
	}

	.about-expertise__stat h3 {
		font-size: 0.9rem;
	}

	.about-expertise__trust {
		margin-top: 30px;
		padding: 12px 14px;
		font-size: 0.86rem;
		white-space: normal;
	}

	.about-client-trust {
		padding: 58px 0;
	}

	.about-client-trust__title {
		font-size: clamp(1.92rem, 8.4vw, 2.25rem);
		overflow-wrap: anywhere;
	}

	.about-client-trust__metric {
		margin: 26px 0 18px;
	}

	.about-client-trust__description {
		font-size: 0.94rem;
	}

	.about-client-trust__points {
		display: grid;
		gap: 11px;
	}

	.about-client-trust__testimonial-wrap::before {
		display: none;
	}

	.about-client-trust__badge {
		position: relative;
		top: auto;
		right: auto;
		width: fit-content;
		margin: 0 0 14px auto;
	}

	.about-client-trust__testimonial {
		min-height: 0;
		padding: 26px 20px;
		border-radius: 22px;
	}

	.about-client-trust__slides {
		min-height: 350px;
	}

	.about-client-trust__quote {
		top: 22px;
		left: 20px;
	}

	.about-client-trust__slide blockquote p {
		font-size: 1rem;
		line-height: 1.68;
	}

	.about-client-trust__person {
		align-items: flex-start;
	}

	.about-client-trust__avatar {
		width: 46px;
		height: 46px;
	}

	.about-technology {
		padding: 60px 0;
	}

	.about-technology__header {
		margin-bottom: 28px;
	}

	.about-technology__title {
		font-size: clamp(1.9rem, 8vw, 2.2rem);
		overflow-wrap: anywhere;
	}

	.about-technology__header > p {
		font-size: 0.92rem;
	}

	.about-technology__panel {
		border-radius: 20px;
	}

	.about-technology__glow {
		width: 12px;
		height: 12px;
		opacity: 0.5;
	}

	.about-technology__item {
		padding: 28px 14px;
	}

	.about-technology__logo {
		width: clamp(70px, 22vw, 86px);
		height: clamp(70px, 22vw, 86px);
		margin-bottom: 16px;
		border-radius: 20px;
	}

	.about-technology__item h3 {
		font-size: 1rem;
	}

	.about-technology__item p {
		font-size: 0.84rem;
	}

	.about-final-cta {
		padding: 0 0 58px;
	}

	.about-final-cta__panel {
		gap: 30px;
		padding: 30px 22px;
		border-radius: 22px;
	}

	.about-final-cta__title {
		font-size: clamp(2rem, 8vw, 2.45rem);
		overflow-wrap: anywhere;
	}

	.about-final-cta__content > p:not(.about-final-cta__eyebrow) {
		margin-top: 18px;
		font-size: 0.94rem;
	}

	.about-final-cta__actions {
		gap: 12px;
		margin-top: 24px;
	}

	.about-final-cta__button {
		width: 100%;
		min-height: 48px;
	}

	.about-final-cta__trust {
		padding: 22px;
		border-radius: 18px;
	}

	.outsourcing-section {
		padding: 72px 0;
	}

	.why-choose-image {
		height: 330px;
		border-radius: 16px;
	}

	.why-choose-header h2 {
		font-size: clamp(2rem, 8vw, 2.45rem);
	}

	.why-benefits-grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.why-benefit-card {
		padding: 18px;
	}

	.why-benefit-icon {
		width: 46px;
		height: 46px;
	}

	.why-choose-cta {
		width: 100%;
	}

	.footer-bottom div {
		flex-wrap: wrap;
		justify-content: center;
	}
}

@media (max-width: 430px) {
	:root {
		--top-bar-sticky-offset: 126px;
	}

	.top-bar .container {
		width: min(100% - 20px, var(--container));
	}

	.top-bar__link {
		font-size: 0.74rem;
	}

	.hero-slider,
	.hero-slide__inner {
		min-height: 620px;
	}

	.hero-slide__inner {
		padding-top: 56px;
	}

	.counter-item {
		padding: 18px;
	}
}

@media (max-width: 390px) {
	.top-bar .container {
		width: min(100% - 16px, var(--container));
	}

	.top-bar__link {
		font-size: 0.72rem;
	}

	.top-bar__link span {
		overflow-wrap: anywhere;
	}

	.hero-title {
		font-size: clamp(1.92rem, 9.5vw, 2.35rem);
	}

	.hero-eyebrow {
		max-width: 100%;
		font-size: 0.62rem;
	}

	.about-hero-content {
		padding-left: 14px;
	}

	.about-hero-title {
		font-size: clamp(1.95rem, 9vw, 2.35rem);
	}

	.about-hero-description {
		line-height: 1.65;
	}

	.counter-panel {
		grid-template-columns: 1fr;
	}

	.counter-item {
		justify-content: flex-start;
	}
}

@media (max-width: 320px) {
	.top-bar .container {
		width: min(100% - 12px, var(--container));
	}

	.top-bar__link {
		font-size: 0.72rem;
		gap: 5px;
	}

	.top-bar__icon {
		width: 14px;
		height: 14px;
	}

	.about-expertise__stats {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.about-expertise__progress {
		width: 138px;
	}

	.about-client-trust__testimonial {
		padding: 24px 18px;
	}

	.about-client-trust__metric strong {
		font-size: 3rem;
	}

	.about-client-trust__rating {
		font-size: 0.84rem;
	}

	.about-technology__grid {
		grid-template-columns: 1fr;
	}

	.about-technology__item:nth-child(odd)::after,
	.about-technology__item:nth-child(-n + 2)::before {
		display: none;
	}

	.about-technology__item:not(:last-child)::before {
		position: absolute;
		right: 24px;
		bottom: 0;
		left: 24px;
		display: block;
		height: 1px;
		background: linear-gradient(90deg, transparent, rgba(6, 45, 91, 0.1), transparent);
		content: "";
	}

	.about-final-cta__panel {
		padding: 26px 18px;
	}

	.about-final-cta__title {
		font-size: clamp(1.82rem, 9vw, 2.1rem);
	}

	.about-final-cta__eyebrow {
		font-size: 11px;
		line-height: 12px;
	}
}

body.single-service .service-detail-page .service-detail-offers__eyebrow,
body.single-service .service-detail-page .service-detail-benefits__eyebrow,
body.single-service .service-detail-page .service-detail-process__eyebrow,
body.single-service .service-detail-page .service-detail-faq__eyebrow,
body.single-service .service-detail-page .service-detail-related__eyebrow {
	max-width: min(100%, calc(100vw - 32px));
	gap: 7px;
	padding: 7px 12px;
	color: var(--primary-navy);
	font-size: 12px !important;
	font-style: normal;
	font-weight: 800 !important;
	line-height: 13px !important;
	letter-spacing: 0;
	white-space: normal;
}

body.single-service .service-detail-page .service-detail-offers__eyebrow span,
body.single-service .service-detail-page .service-detail-benefits__eyebrow span,
body.single-service .service-detail-page .service-detail-process__eyebrow span,
body.single-service .service-detail-page .service-detail-faq__eyebrow span,
body.single-service .service-detail-page .service-detail-related__eyebrow span {
	width: 6px;
	height: 6px;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.header-cta,
	.header-cta::after,
	.hero-btn::after,
	.mobile-menu-cta,
	.mobile-menu-cta::after {
		animation: none;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	.reveal-on-scroll {
		opacity: 1;
		transform: none;
	}

	.faq-item,
	.faq-toggle,
	.faq-answer p,
	.about-hero-breadcrumb a,
	.about-intro-point,
	.about-intro-point__number,
	.about-intro-point__body,
	.about-intro-point > i,
	.about-foundation-card,
	.about-foundation-card__icon,
	.about-expertise__progress,
	.about-expertise__progress-center i,
	.about-client-trust__testimonial,
	.about-client-trust__rating i,
	.about-final-cta__button {
		transform: none !important;
	}

	.about-expertise__stats::after {
		animation: none !important;
	}

	.testimonials-marquee-wrap,
	.testimonial-marquee {
		overflow-x: auto;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.testimonial-track {
		animation: none !important;
		transform: none !important;
	}

	.events-gallery-viewport {
		overflow-x: auto;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.events-gallery-track {
		animation: none !important;
		transform: none !important;
	}

	.process-card,
	.process-step-badge,
	.process-grid::after,
	.process-chart__bars span,
	.process-chart__line,
	.process-chart__point,
	.process-checklist div,
	.process-checklist i,
	.process-checklist b span,
	.process-checklist strong,
	.process-ring,
	.process-security__icon span,
	.process-security__icon i,
	.process-security__icon b,
	.process-security > div:not(.process-security__icon),
	.process-quality i::before,
	.process-quality i::after,
	.process-support div,
	.process-support div b {
		animation: none !important;
	}

	.process-chart__bars span,
	.process-checklist b span,
	.process-quality i::before {
		transform: scale(1) !important;
	}

	.process-chart__line {
		stroke-dashoffset: 0 !important;
	}

	.process-chart__point {
		opacity: 1 !important;
		transform: scale(1) !important;
	}

	.process-checklist div,
	.process-security > div:not(.process-security__icon),
	.process-support div {
		background: rgba(85, 189, 58, 0.07);
		border-color: rgba(85, 189, 58, 0.18);
	}

	.process-checklist i {
		opacity: 1;
		transform: scale(1);
	}

	.process-checklist strong {
		color: var(--brand-green-dark);
	}

	.process-ring {
		background:
			radial-gradient(circle, rgba(85, 189, 58, 0.13) 0 47%, transparent 48%),
			conic-gradient(var(--brand-green) 0deg 270deg, rgba(98, 181, 229, 0.16) 270deg 360deg);
	}

	.process-quality i::after,
	.process-security__icon b {
		opacity: 0;
	}

	.process-support div b {
		background: var(--brand-green);
	}
}
































.team-carousel--static {
	padding-bottom: 0 !important;
}

.team-carousel--static .team-carousel__viewport {
	overflow: visible !important;
}

.team-carousel--static .team-carousel__track {
	flex-wrap: wrap !important;
	justify-content: center !important;
	transform: none !important;
}

.team-carousel--static .team-card {
	flex: 0 1 calc((100% - 48px) / 3) !important;
	max-width: 360px !important;
}

.team-socials a {
	display: inline-grid !important;
	place-items: center !important;
	width: 36px !important;
	height: 36px !important;
	padding: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.1) !important;
	color: var(--white) !important;
	font-size: 0.9rem !important;
	text-decoration: none !important;
	transition: background 260ms ease, border-color 260ms ease, transform 260ms ease !important;
}

.team-socials a:hover,
.team-socials a:focus-visible {
	border-color: var(--brand-green) !important;
	background: var(--brand-green) !important;
	color: var(--white) !important;
	transform: translateY(-2px) !important;
}

@media (max-width: 1199px) {
	.team-carousel--static .team-card {
		flex-basis: calc((100% - 22px) / 2) !important;
		max-width: 390px !important;
	}
}

@media (max-width: 768px) {
	.team-carousel--static {
		padding-bottom: 0 !important;
	}

	.team-carousel--static .team-carousel__viewport {
		width: 100% !important;
	}

	.team-carousel--static .team-card {
		flex-basis: min(100%, 390px) !important;
		max-width: 390px !important;
	}
}