/**
 * Savvycom Redesigned Header (Mega Menu + Smart Sticky) & Footer Stylesheet
 * Single-DOM Responsive Architecture (Desktop > 1024px | Tablet 768px–1024px | Mobile <= 767px)
 */

/* ==========================================================================
   1. TYPOGRAPHY & RESET OVERRIDES (Countering global Open Sans !important)
   ========================================================================== */
#svc-site-header,
#svc-site-header *,
#svc-site-footer,
#svc-site-footer * {
	box-sizing: border-box;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

#svc-site-header ul,
#svc-site-header li,
#svc-site-footer ul,
#svc-site-footer li {
	list-style: none !important;
	list-style-type: none !important;
	margin: 0;
	padding: 0;
	opacity: 1 !important;
}

#svc-site-header li::before,
#svc-site-header li::after,
#svc-site-footer li::before,
#svc-site-footer li::after {
	content: none !important;
	display: none !important;
}

#svc-site-header .svc-lang-code {
	font-family: 'Inter', 'Montserrat', sans-serif !important;
}

/* Case Study section tabs (#svc-cd .cd-tabs): when hovering another tab, default active tab (.is-on) turns black */
#svc-cd .cd-tabs:hover a.is-on:not(:hover) {
	color: #000000 !important;
}

/* Ensure legacy theme headers/footers and duplicate scroll_up stay hidden */
header.wgl-theme-header,
#footer.footer,
#scroll_up {
	display: none !important;
}

/* Ensure Elementor popups/modals always sit above the header */
.elementor-popup-modal,
.dialog-type-lightbox.dialog-lightbox-widget {
	z-index: 10050 !important;
}

@keyframes svcFadeIn {
	from {
		opacity: 0;
		transform: translateY(4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ==========================================================================
   2. HEADER BAR & SMART STICKY STATES (Desktop Default)
   ========================================================================== */
.svc-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 9990;
	transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.25s ease, box-shadow 0.25s ease;
}

body.admin-bar .svc-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar .svc-header {
		top: 46px;
	}
}

/* Smart Sticky Header: hides when scrolling down or when any modal popup is open */
.svc-header.is-hidden:not(.is-mega-open):not(.is-mobile-open),
body.svc-popup-open .svc-header {
	transform: translateY(-105%) !important;
	pointer-events: none !important;
}

.svc-header__bar {
	width: 100%;
	height: 88px;
	background-color: #ffffff !important;
	box-shadow: 0px 4px 11.4px 0px rgba(0, 0, 0, 0.08);
	transition: background-color 0.25s ease, box-shadow 0.25s ease, height 0.25s ease;
}

/* Solid White Header state (when Sticky on scroll-up, or when Mega Menu is open, or on light pages) */
.svc-header.is-solid .svc-header__bar,
.svc-header.is-mega-open .svc-header__bar {
	background-color: #ffffff !important;
	box-shadow: 0px 4px 11.4px 0px rgba(0, 0, 0, 0.18);
}

.svc-header-spacer {
	height: 88px;
	width: 100%;
	background-color: #ffffff;
}

.svc-header__inner {
	max-width: 1920px;
	height: 100%;
	margin: 0 auto;
	padding: 0 clamp(24px, 4.4vw, 89px);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	position: relative;
}

/* ==========================================================================
   3. BRAND LOGO (Color Logo on Solid White Header)
   ========================================================================== */
.svc-header__logo {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	text-decoration: none;
	outline: none;
}

.svc-logo-img {
	display: block;
	width: 238px;
	height: auto;
	max-height: 52px;
	object-fit: contain;
	transition: opacity 0.2s ease;
}

.svc-logo-img--white {
	display: none !important;
}

.svc-logo-img--color {
	display: block !important;
	max-height: 47px;
}

/* ==========================================================================
   4. TOP-LEVEL NAVIGATION (Desktop)
   ========================================================================== */
.svc-header__nav {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
}

.svc-nav-list {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(22px, 2.3vw, 44px);
	list-style: none;
	margin: 0;
	padding: 0;
}

.svc-nav-item {
	position: static;
	margin: 0;
	padding: 0;
}

.svc-nav-item__head {
	display: inline-flex;
	align-items: center;
	position: relative;
}

.svc-nav-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 2px;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	color: #3b3a3a !important;
	text-decoration: none !important;
	white-space: nowrap;
	position: relative;
	transition: color 0.2s ease;
}

/* Hover / Active Top-Level Item (Figma Node 2294:990) */
.svc-nav-item:hover .svc-nav-link,
.svc-nav-item.is-open .svc-nav-link,
.svc-nav-item.is-current .svc-nav-link {
	color: #0e8b83 !important;
}

/* When hovering another top-level item or another dropdown is open, default .is-current item reverts to dark */
.svc-nav-list:hover .svc-nav-item.is-current:not(:hover):not(.is-open) .svc-nav-link,
.svc-header.is-mega-open .svc-nav-item.is-current:not(.is-open):not(:hover) .svc-nav-link {
	color: #3b3a3a !important;
}

/* Bottom Active Bar (#33F3AF / #0E8B83) */
.svc-nav-link__underline {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 2px;
	border-radius: 2px;
	background-color: #33f3af;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.22s ease, background-color 0.22s ease;
}

.svc-nav-item:hover .svc-nav-link__underline,
.svc-nav-item.is-open .svc-nav-link__underline,
.svc-nav-item.is-current .svc-nav-link__underline {
	transform: scaleX(1);
}

.svc-nav-list:hover .svc-nav-item.is-current:not(:hover):not(.is-open) .svc-nav-link__underline,
.svc-header.is-mega-open .svc-nav-item.is-current:not(.is-open):not(:hover) .svc-nav-link__underline {
	transform: scaleX(0);
}

/* Top-Level Chevron */
.svc-nav-link__chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 12px;
	height: 7px;
	transition: transform 0.22s ease;
}

.svc-nav-link__chevron .svc-chevron {
	width: 12px;
	height: 6px;
	display: none;
}

.svc-nav-link__chevron .svc-chevron--white {
	display: none !important;
}

.svc-nav-link__chevron .svc-chevron--dark {
	display: block;
}

.svc-nav-item:hover .svc-nav-link__chevron .svc-chevron--dark,
.svc-nav-item.is-open .svc-nav-link__chevron .svc-chevron--dark {
	display: none !important;
}

.svc-nav-item:hover .svc-nav-link__chevron .svc-chevron--active,
.svc-nav-item.is-open .svc-nav-link__chevron .svc-chevron--active {
	display: block !important;
}

.svc-nav-item:hover .svc-nav-link__chevron,
.svc-nav-item.is-open .svc-nav-link__chevron {
	transform: rotate(180deg);
}

.svc-nav-link__mobile-chevron,
#svc-site-header .svc-nav-accordion-toggle {
	display: none;
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* ==========================================================================
   5. RIGHT UTILITY ACTIONS (Language, Divider, Contact Us)
   ========================================================================== */
.svc-header__actions {
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.5vw, 28px);
	flex-shrink: 0;
}

/* Language Switcher — protected with !important against .tlp-portfolio button blue background */
.svc-lang-switcher {
	position: relative;
}

#svc-site-header .svc-lang-btn,
#svc-site-header .svc-lang-btn:hover,
#svc-site-header .svc-lang-btn:focus,
#svc-site-header .svc-lang-btn:active {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	padding: 6px 4px !important;
	margin: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	cursor: pointer;
	color: #090909 !important;
	transition: opacity 0.2s ease;
}

.svc-lang-btn__globe {
	display: inline-flex;
	width: 19px;
	height: 19px;
}

.svc-globe--white,
.svc-chevron-lang--white {
	display: none !important;
}

.svc-globe--dark,
.svc-chevron-lang--dark {
	display: block !important;
}

#svc-site-header .svc-lang-code {
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	color: #090909 !important;
}

.svc-lang-btn__chevron {
	display: inline-flex;
	align-items: center;
	transition: transform 0.2s ease;
}

.svc-lang-switcher.is-open .svc-lang-btn__chevron {
	transform: rotate(180deg);
}

.svc-lang-dropdown {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	width: 240px;
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.16);
	padding: 14px 16px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(6px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
	z-index: 10020;
}

.svc-lang-switcher.is-open .svc-lang-dropdown {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

.svc-lang-dropdown__title {
	font-size: 13px;
	font-weight: 600;
	color: #707070;
	margin-bottom: 8px;
	padding-bottom: 6px;
	border-bottom: 1px solid #eeeeee;
}

.svc-lang-dropdown__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.svc-lang-dropdown__list li {
	margin: 0;
}

.svc-lang-dropdown__list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 7px 8px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	color: #212529 !important;
	text-decoration: none !important;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.svc-lang-dropdown__list a:hover {
	background-color: rgba(14, 139, 131, 0.08);
	color: #0e8b83 !important;
}

/* Vertical Separator */
.svc-actions-divider {
	display: inline-block;
	width: 1px;
	height: 35px;
	border-radius: 11px;
	background-color: rgba(14, 14, 14, 0.36);
}

/* Contact Us CTA Button (Figma Node 2240:609 / 2306:790) */
.svc-btn-contact {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 185px;
	height: 46px;
	padding: 10px 30px;
	border-radius: 5px;
	background-color: #0e8b83 !important;
	color: #f6f6f6 !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.svc-btn-contact:hover,
.svc-btn-contact:focus-visible {
	background-color: #0a756e !important;
	color: #ffffff !important;
	box-shadow: 0 6px 16px rgba(14, 139, 131, 0.28);
}

#svc-site-header .svc-mobile-toggle,
#svc-site-header .svc-mobile-toggle:hover,
#svc-site-header .svc-mobile-toggle:focus {
	display: none;
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* ==========================================================================
   6. DESKTOP MEGA MENU PANEL (Figma Node 2250:409)
   ========================================================================== */
.svc-mega-panel {
	position: fixed;
	top: 98px;
	left: 50%;
	transform: translateX(-50%) translateY(8px);
	width: min(1728px, calc(100vw - 64px));
	min-height: 390px;
	background-color: #ffffff !important;
	border-radius: 10px;
	box-shadow: 0px 18px 44px rgba(0, 0, 0, 0.16);
	padding: 35px clamp(32px, 5vw, 110px) 30px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
	z-index: 10010;
}

body.admin-bar .svc-mega-panel {
	top: 130px;
}

/* Hover bridge between 88px header bar and 98px mega menu panel */
.svc-mega-panel::before {
	content: '';
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	height: 20px;
}

.svc-nav-item.is-open > .svc-mega-panel {
	opacity: 1 !important;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}

.svc-mega-panel__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(28px, 3.8vw, 72px);
	min-height: 318px;
}

.svc-mega-nav-col {
	flex: 1 1 46%;
	max-width: 615px;
}

/* 6A. Industries 2-Column Icon Grid (Figma Nodes 2310:2445, 2294:1150, etc.) */
.svc-mega-grid--industries {
	display: grid;
	grid-template-columns: repeat(2, minmax(200px, 272px));
	column-gap: clamp(24px, 3.4vw, 70px);
	row-gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.svc-mega-grid__item {
	margin: 0;
	padding: 0;
}

.svc-industry-card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-bottom: 9px;
	position: relative;
	text-decoration: none !important;
	color: #111111 !important;
}

.svc-industry-card__icon-box {
	width: 52px;
	height: 50px;
	border-radius: 5px;
	background-color: #0e8b83;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.svc-industry-card__icon {
	max-width: 38px;
	max-height: 38px;
	width: auto;
	height: auto;
	display: block;
}

.svc-industry-card__label {
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	color: #111111 !important;
	transition: color 0.18s ease, transform 0.18s ease, font-size 0.18s ease;
}

.svc-industry-card__mobile-arrow {
	display: none;
}

.svc-industry-card__line {
	position: absolute;
	left: 3px;
	right: 0;
	bottom: 0;
	height: 1px;
	background-color: #0e8b83;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.22s ease;
}

.svc-industry-card:hover .svc-industry-card__label,
.svc-industry-card:focus-visible .svc-industry-card__label,
.svc-mega-grid__item.is-current .svc-industry-card__label {
	color: #0e8b83 !important;
	font-size: 20px !important;
}

/* When hovering another industry card, default .is-current industry card turns back to black */
.svc-mega-grid--industries:hover .svc-mega-grid__item.is-current:not(:hover) .svc-industry-card__label {
	color: #111111 !important;
	font-size: 18px !important;
}

.svc-industry-card:hover .svc-industry-card__line,
.svc-industry-card:focus-visible .svc-industry-card__line,
.svc-mega-grid__item.is-current .svc-industry-card__line {
	transform: scaleX(1);
}

.svc-mega-grid--industries:hover .svc-mega-grid__item.is-current:not(:hover) .svc-industry-card__line {
	transform: scaleX(0);
}

/* 6B. Solutions / Services / Resources Vertical List (Figma Node 2284:274 & 2294:934) */
.svc-mega-list {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 504px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.svc-mega-list--compact {
	gap: 14px;
}

.svc-mega-list__item {
	margin: 0;
	padding: 0;
}

.svc-mega-list__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid #e5e5e5;
	text-decoration: none !important;
	transition: border-color 0.2s ease;
}

.svc-mega-list__label {
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: #000000 !important;
	transition: color 0.2s ease;
}

.svc-mega-list__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 14px;
	height: 11px;
	flex-shrink: 0;
	transition: transform 0.2s ease;
}

.svc-mega-list__arrow .svc-arrow--hover {
	display: none;
}

.svc-mega-list__link:hover,
.svc-mega-list__link:focus-visible,
.svc-mega-list__item.is-current .svc-mega-list__link {
	border-bottom-color: #0e8b83;
}

.svc-mega-list__link:hover .svc-mega-list__label,
.svc-mega-list__link:focus-visible .svc-mega-list__label,
.svc-mega-list__item.is-current .svc-mega-list__label {
	color: #0e8b83 !important;
}

.svc-mega-list__link:hover .svc-mega-list__arrow,
.svc-mega-list__link:focus-visible .svc-mega-list__arrow,
.svc-mega-list__item.is-current .svc-mega-list__arrow {
	transform: translateX(5px);
}

.svc-mega-list__link:hover .svc-arrow--default,
.svc-mega-list__link:focus-visible .svc-arrow--default,
.svc-mega-list__item.is-current .svc-arrow--default {
	display: none;
}

.svc-mega-list__link:hover .svc-arrow--hover,
.svc-mega-list__link:focus-visible .svc-arrow--hover,
.svc-mega-list__item.is-current .svc-arrow--hover {
	display: block;
}

/* When hovering another list item, default .is-current item reverts to black */
.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-mega-list__link {
	border-bottom-color: #e5e5e5;
}

.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-mega-list__label {
	color: #000000 !important;
}

.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-mega-list__arrow {
	transform: translateX(0);
}

.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-arrow--default {
	display: block;
}

.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-arrow--hover {
	display: none;
}

/* 6C. Vertical Divider (Figma Node 2268:254) */
.svc-mega-divider {
	width: 1px;
	min-height: 315px;
	align-self: stretch;
	background-color: #e5e5e5;
	flex-shrink: 0;
}

/* 6D. Right Column: Case Study Highlight Slider (Figma Node 2256:872) */
.svc-mega-casestudy-col {
	flex: 0 0 min(745px, 48%);
	max-width: 745px;
}

.svc-casestudy-card {
	background-color: #ffffff;
	border: 0.5px solid #0e8b83;
	border-radius: 10px;
	padding: 15.5px 18.5px;
	min-height: 292px;
	display: flex;
	align-items: stretch;
}

.svc-casestudy-slide {
	display: none;
	grid-template-columns: minmax(220px, 351px) 1fr;
	gap: 20px;
	width: 100%;
	align-items: stretch;
}

.svc-casestudy-slide.is-active {
	display: grid;
	animation: svcFadeIn 0.25s ease;
}

.svc-casestudy-slide__media {
	position: relative;
	width: 100%;
	height: 260px;
	border-radius: 4px;
	overflow: hidden;
	background-color: #0d2b29;
}

.svc-casestudy-slide__img-link {
	display: block;
	width: 100%;
	height: 100%;
}

.svc-casestudy-slide__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.svc-casestudy-slide__media:hover .svc-casestudy-slide__img {
	transform: scale(1.03);
}

.svc-casestudy-slide__badge {
	position: absolute;
	top: 11px;
	left: 14px;
	min-width: 107px;
	height: 19px;
	padding: 0 14px;
	border-radius: 2px;
	background-color: #0e8b83;
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	line-height: 19px;
	text-align: center;
	pointer-events: none;
}

.svc-casestudy-slide__content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 6px 2px 4px 0;
}

#svc-site-header .svc-casestudy-slide__title {
	margin: 0 !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	color: #000000 !important;
}

#svc-site-header .svc-casestudy-slide__title a {
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	color: inherit !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}

#svc-site-header .svc-casestudy-slide__title a:hover {
	color: #0e8b83 !important;
}

.svc-casestudy-slide__divider {
	width: 100%;
	height: 1px;
	background-color: #e5e5e5;
	margin: 12px 0;
}

.svc-casestudy-slide__metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 14px;
}

.svc-casestudy-metric__value {
	display: block;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.05;
	color: #0e8b83;
	margin-bottom: 6px;
}

.svc-casestudy-metric__label {
	display: block;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	color: #000000;
}

.svc-casestudy-slide__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	color: #0e8b83 !important;
	text-decoration: none !important;
	margin-top: auto;
	transition: gap 0.2s ease;
}

.svc-casestudy-slide__cta:hover {
	gap: 12px;
}

.svc-casestudy-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 13px;
}

#svc-site-header .svc-casestudy-dot {
	display: inline-block !important;
	width: 7px !important;
	height: 7px !important;
	min-width: 7px !important;
	min-height: 7px !important;
	max-width: 7px !important;
	max-height: 7px !important;
	line-height: 0 !important;
	font-size: 0 !important;
	border-radius: 50% !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background-color: rgba(112, 112, 112, 0.3) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

#svc-site-header .svc-casestudy-dot.is-active {
	background-color: rgba(82, 82, 82, 0.85) !important;
	transform: scale(1.15);
}

/* ==========================================================================
   7. RESPONSIVE HEADER & ACCORDION MENU (Tablet & Mobile <= 1024px)
   ========================================================================== */
@media screen and (max-width: 1280px) and (min-width: 1025px) {
	.svc-mega-panel {
		padding: 28px 32px;
	}
	.svc-mega-grid--industries {
		grid-template-columns: repeat(2, minmax(170px, 220px));
		column-gap: 24px;
	}
	.svc-casestudy-slide {
		grid-template-columns: 220px 1fr;
	}
	#svc-site-header .svc-casestudy-slide__title {
		font-size: 19px !important;
	}
	.svc-casestudy-metric__value {
		font-size: 26px;
	}
}

@media screen and (max-width: 1024px) {
	/* Mobile/Tablet Bar matches Figma Node 2426:719 */
	.svc-header__bar {
		height: 65px;
		background-color: #ffffff !important;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	}

	.svc-header-spacer {
		height: 65px;
	}

	.svc-header__inner {
		padding: 0 20px;
		gap: 12px;
	}

	.svc-logo-img--white {
		display: none !important;
	}

	.svc-logo-img--color {
		display: block !important;
		width: 137px;
		height: 27px;
		max-height: 27px;
	}

	.svc-actions-divider,
	.svc-search-wrap,
	.svc-lang-switcher {
		display: none;
	}

	.svc-header__actions {
		gap: 10px;
		margin-left: auto;
	}

	.svc-btn-contact {
		width: auto;
		min-width: 93px;
		height: 25px;
		padding: 0 14px;
		border-radius: 3px;
		font-size: 12px;
	}

	.svc-mobile-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 27px;
		height: 25px;
		padding: 0;
		border: none;
		background: transparent;
		cursor: pointer;
	}

	.svc-mobile-toggle__icon {
		width: 27px;
		height: 25px;
		display: block;
	}

	.svc-mobile-toggle__icon--close {
		display: none;
	}

	.svc-header.is-mobile-open .svc-mobile-toggle__icon--open {
		display: none;
	}

	.svc-header.is-mobile-open .svc-mobile-toggle__icon--close {
		display: block;
	}

	/* Mobile Accordion Dropdown Card (Figma Node 2313:4156) */
	.svc-header__nav {
		position: fixed;
		top: 67px;
		left: 13px;
		right: 13px;
		max-height: calc(100dvh - 80px);
		overflow-y: auto;
		background-color: #ffffff;
		border-radius: 5px;
		box-shadow: 0 14px 34px rgba(0, 0, 0, 0.2);
		padding: 18px 24px 24px;
		display: block;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(-8px);
		transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
		z-index: 10015;
	}

	body.admin-bar .svc-header__nav {
		top: 113px;
		max-height: calc(100dvh - 125px);
	}

	.svc-header.is-mobile-open .svc-header__nav {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateY(0);
	}

	.svc-nav-list {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.svc-nav-item {
		border-bottom: none;
	}

	.svc-nav-item__head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		border-bottom: 1px solid #e5e5e5;
		position: relative;
	}

	.svc-nav-item.is-open .svc-nav-item__head {
		border-bottom-color: #0e8b83;
	}

	.svc-nav-link {
		width: 100%;
		justify-content: space-between;
		padding: 12px 0;
		font-size: 13px;
		font-weight: 600;
		color: #111111 !important;
	}

	.svc-nav-item.is-open .svc-nav-link {
		color: #0e8b83 !important;
	}

	.svc-nav-link__underline {
		display: none !important;
	}

	.svc-nav-link__chevron .svc-chevron--white {
		display: none !important;
	}

	.svc-nav-link__chevron .svc-chevron--dark {
		display: block !important;
	}

	.svc-nav-link__mobile-chevron {
		display: inline-flex;
		align-items: center;
		transform: rotate(-90deg);
	}

	/* Full-row tap target for accordion parent items on mobile */
	.svc-nav-accordion-toggle {
		display: block;
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		background: transparent;
		border: none;
		padding: 0;
		cursor: pointer;
		z-index: 2;
	}

	/* Inline Accordion Panel using the exact same .svc-mega-panel DOM */
	.svc-mega-panel {
		position: static;
		transform: none !important;
		width: 100%;
		min-height: 0;
		background: transparent;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		box-shadow: none;
		border-radius: 0;
		padding: 12px 0 14px;
		display: none;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.svc-mega-panel::before {
		display: none;
	}

	.svc-nav-item.is-open > .svc-mega-panel {
		display: block;
		animation: svcFadeIn 0.2s ease;
	}

	.svc-mega-panel__inner {
		flex-direction: column;
		align-items: stretch;
		gap: 14px;
		min-height: 0;
	}

	.svc-mega-nav-col {
		max-width: 100%;
		width: 100%;
	}

	.svc-mega-divider {
		display: none;
	}

	/* Submenu Pill Items on Mobile (Figma Nodes 2313:4181 - 2313:4199) */
	.svc-mega-grid--industries,
	.svc-mega-list {
		display: flex;
		flex-direction: column;
		gap: 8px;
		max-width: 100%;
	}

	.svc-industry-card,
	.svc-mega-list__link {
		min-height: 30px;
		padding: 6px 14px;
		border-radius: 4px;
		background-color: #f4fbf9;
		border-bottom: none !important;
		display: flex;
		align-items: center;
		justify-content: space-between;
		transition: background-color 0.18s ease, color 0.18s ease;
	}

	.svc-industry-card__icon-box {
		width: 24px;
		height: 24px;
		border-radius: 4px;
	}

	.svc-industry-card__icon {
		max-width: 16px;
		max-height: 16px;
	}

	.svc-industry-card__label,
	.svc-mega-list__label {
		font-size: 12px !important;
		font-weight: 600;
		color: #111111;
		margin-right: auto;
	}

	.svc-industry-card__mobile-arrow {
		display: inline-flex;
		align-items: center;
	}

	.svc-industry-card__mobile-arrow .svc-arrow--hover {
		display: none;
	}

	.svc-industry-card__line {
		display: none;
	}

	.svc-industry-card:hover,
	.svc-industry-card:active,
	.svc-mega-grid__item.is-current .svc-industry-card,
	.svc-mega-list__link:hover,
	.svc-mega-list__link:active,
	.svc-mega-list__item.is-current .svc-mega-list__link {
		background-color: #0e8b83;
	}

	.svc-industry-card:hover .svc-industry-card__label,
	.svc-mega-grid__item.is-current .svc-industry-card__label,
	.svc-mega-list__link:hover .svc-mega-list__label,
	.svc-mega-list__item.is-current .svc-mega-list__label {
		color: #ffffff !important;
	}

	.svc-mega-grid--industries:hover .svc-mega-grid__item.is-current:not(:hover) .svc-industry-card,
	.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-mega-list__link {
		background-color: #f4fbf9;
	}

	.svc-mega-grid--industries:hover .svc-mega-grid__item.is-current:not(:hover) .svc-industry-card__label,
	.svc-mega-list:hover .svc-mega-list__item.is-current:not(:hover) .svc-mega-list__label {
		color: #111111 !important;
	}

	/* Compact Mobile Case Study Card inside Accordion (Figma Node 2313:4235) */
	.svc-mega-casestudy-col {
		flex: 1 1 auto;
		max-width: 100%;
		width: 100%;
	}

	.svc-casestudy-card {
		min-height: 120px;
		padding: 4px 8px 4px 4px;
		border-radius: 6px;
	}

	.svc-casestudy-slide {
		grid-template-columns: 145px 1fr;
		gap: 10px;
		align-items: center;
	}

	.svc-casestudy-slide__media {
		height: 112px;
		border-radius: 4px;
	}

	.svc-casestudy-slide__badge {
		top: 6px;
		left: 8px;
		min-width: 64px;
		height: 13px;
		line-height: 13px;
		font-size: 8px;
		padding: 0 8px;
	}

	.svc-casestudy-slide__content {
		padding: 2px 0;
	}

	#svc-site-header .svc-casestudy-slide__title {
		font-size: 11.5px !important;
		font-weight: 700 !important;
		line-height: 1.25 !important;
	}

	#svc-site-header .svc-casestudy-slide__title a {
		font-size: 11.5px !important;
		font-weight: 700 !important;
		line-height: 1.25 !important;
	}

	.svc-casestudy-slide__divider {
		margin: 5px 0;
	}

	.svc-casestudy-slide__metrics {
		gap: 6px;
		margin-bottom: 6px;
	}

	.svc-casestudy-metric__value {
		font-size: 15px;
		margin-bottom: 2px;
	}

	.svc-casestudy-metric__label {
		font-size: 8px;
		line-height: 1.15;
	}

	.svc-casestudy-slide__cta {
		font-size: 10px;
		gap: 5px;
	}

	.svc-casestudy-slide__cta img {
		width: 11px;
		height: 11px;
	}

	.svc-casestudy-dots {
		margin-top: 7px;
		gap: 6px;
	}

	#svc-site-header .svc-casestudy-dot {
		width: 5px !important;
		height: 5px !important;
		min-width: 5px !important;
		min-height: 5px !important;
		max-width: 5px !important;
		max-height: 5px !important;
	}
}

/* ==========================================================================
   8. REDESIGNED FOOTER (Figma Node 2403:809 Desktop & 2350:1389 Mobile)
   ========================================================================== */
.svc-footer {
	position: relative;
	width: 100%;
	min-height: 767px;
	background: linear-gradient(180deg, #0a7b74 0%, #0e8b83 100%);
	color: #ffffff;
	overflow: hidden;
	padding: 75px 0 36px;
}

.svc-footer__watermark {
	position: absolute;
	left: -260px;
	bottom: -240px;
	width: 958px;
	height: 958px;
	mix-blend-mode: soft-light;
	pointer-events: none;
	z-index: 1;
}

.svc-footer__watermark img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.svc-footer__container {
	position: relative;
	z-index: 2;
	max-width: 1920px;
	margin: 0 auto;
	padding: 0 clamp(28px, 4.4vw, 84px);
}

.svc-footer__main {
	display: grid;
	grid-template-columns: minmax(310px, 435px) minmax(0, 1fr);
	gap: clamp(36px, 6vw, 145px);
	align-items: start;
}

/* 8A. Footer Left Column: Logo, Tagline, 6 Certs, Divider, Follow Us */
.svc-footer__brand-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	max-width: 100%;
}

.svc-footer__logo {
	display: inline-block;
	margin-bottom: 13px;
}

.svc-footer__logo img {
	width: 294px;
	height: auto;
	display: block;
}

#svc-site-footer .svc-footer__tagline {
	margin: 0 0 32px !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	color: #ffffff !important;
}

.svc-footer__certs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 38px;
}

.svc-cert-badge {
	width: 59.5px;
	height: 59.5px;
	object-fit: contain;
	display: block;
}

.svc-cert-badge--pledge {
	width: 63.5px;
	height: 66px;
}

.svc-footer__brand-divider {
	width: 100%;
	max-width: 364px;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.4);
	margin-bottom: 36px;
}

.svc-footer__social {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

#svc-site-footer .svc-footer__social-heading {
	margin: 0 !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #ffffff !important;
	text-transform: uppercase !important;
}

.svc-footer__social-list {
	display: flex;
	align-items: center;
	gap: 13px;
}

.svc-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	flex: 0 0 52px;
	border-radius: 50%;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.svc-footer__social-link:hover {
	transform: translateY(-2px);
	opacity: 0.92;
}

.svc-footer__social-link img {
	width: 52px !important;
	height: 52px !important;
	object-fit: fill !important;
	display: block;
}

/* 8B. Footer Right Column: Headquarters & Global Offices */
.svc-footer__info-col {
	display: flex;
	flex-direction: column;
	gap: 44px;
	min-width: 0;
	max-width: 100%;
}

.svc-footer__hq,
.svc-footer__offices {
	min-width: 0;
	max-width: 100%;
}

.svc-footer__hq-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 18px;
}

.svc-footer__hq-flag {
	width: 37.5px;
	height: 37.5px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}

#svc-site-footer .svc-footer__hq-title {
	margin: 0 !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #ffffff !important;
	text-transform: uppercase !important;
}

.svc-footer__hq-details {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.svc-footer__hq-row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
	max-width: 100%;
}

.svc-footer__hq-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	margin-top: 2px;
	flex-shrink: 0;
}

#svc-site-footer .svc-footer__hq-text {
	margin: 0 !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #ffffff !important;
	overflow-wrap: break-word;
	min-width: 0;
}

#svc-site-footer .svc-footer__hq-text span,
#svc-site-footer .svc-footer__hq-text a {
	font-weight: 400 !important;
}

#svc-site-footer .svc-footer__hq-text strong {
	font-weight: 700 !important;
	margin-right: 4px;
}

#svc-site-footer .svc-footer__hq-text a {
	color: #ffffff !important;
	text-decoration: none !important;
}

#svc-site-footer .svc-footer__hq-text a:hover {
	text-decoration: underline !important;
}

.svc-footer__hq-contact-group {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 24px 56px;
}

.svc-footer__hq-phones {
	display: flex;
	align-items: flex-start;
	gap: 6px;
}

#svc-site-footer .svc-footer__hq-label {
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: #ffffff !important;
	flex-shrink: 0;
}

.svc-footer__hq-phone-list {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

#svc-site-footer .svc-footer__hq-contact-group .svc-footer__hq-text {
	font-size: 16px !important;
}

#svc-site-footer .svc-footer__hq-text--subphone {
	padding-left: 0 !important;
	margin-top: 0 !important;
}

/* 8C. Global Offices 3x2 Grid (Desktop) */
#svc-site-footer .svc-footer__offices-title {
	margin: 0 0 22px !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #ffffff !important;
	text-transform: uppercase !important;
}

.svc-footer__offices-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 359px));
	gap: 21px 30px;
}

.svc-office-card {
	min-height: 182px;
	border-radius: 10px;
	padding: 14px 20px 18px;
	background: linear-gradient(180deg, rgba(178, 255, 228, 0.2) 75%, rgba(173, 255, 226, 0) 125.69%);
	border: 1px solid rgba(255, 255, 255, 0.24);
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.svc-office-card__header {
	display: flex;
	align-items: center;
	gap: 11px;
}

.svc-office-card__flag {
	width: 37.7px;
	height: 37.3px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}

#svc-site-footer .svc-office-card__name {
	margin: 0 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #ffffff !important;
	text-transform: uppercase !important;
}

.svc-office-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#svc-site-footer .svc-office-card__address,
#svc-site-footer .svc-office-card__phone,
#svc-site-footer .svc-office-card__phone a {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.38 !important;
	color: #ffffff !important;
}

#svc-site-footer .svc-office-card__phone a {
	color: #ffffff !important;
	text-decoration: none !important;
}

.svc-footer__offices-dots {
	display: none;
}

/* 8D. Footer Bottom & Scroll-to-Top */
.svc-footer__bottom {
	margin-top: 36px;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.25);
	text-align: center;
}

#svc-site-footer .svc-footer__copyright {
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 300 !important;
	color: rgba(255, 255, 255, 0.9) !important;
}

#svc-site-footer .svc-footer__scroll-top {
	position: absolute;
	right: clamp(20px, 2.5vw, 48px);
	bottom: 58px;
	width: 48px !important;
	height: 47px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 50% !important;
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
	cursor: pointer;
	z-index: 5;
	transition: transform 0.2s ease;
}

#svc-site-footer .svc-footer__scroll-top:hover {
	transform: translateY(-3px);
}

#svc-site-footer .svc-footer__scroll-top img {
	width: 48px !important;
	height: 47px !important;
	display: block;
}

/* ==========================================================================
   9. FOOTER RESPONSIVE BREAKPOINTS (Tablet <= 1200px & Mobile <= 767px)
   ========================================================================== */
@media screen and (max-width: 1280px) {
	.svc-footer__main {
		grid-template-columns: 320px minmax(0, 1fr);
		gap: 40px;
	}
	.svc-footer__offices-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
}

@media screen and (max-width: 960px) {
	.svc-footer__main {
		grid-template-columns: minmax(0, 1fr);
		gap: 36px;
	}
}

@media screen and (max-width: 767px) {
	/* Matches Figma Mobile Footer Node 2350:1389 (440px frame) */
	.svc-footer {
		min-height: 0;
		padding: 46px 0 24px;
	}

	.svc-footer__watermark {
		left: auto;
		right: -180px;
		top: 10px;
		bottom: auto;
		width: 452px;
		height: 452px;
		opacity: 0.61;
	}

	.svc-footer__container {
		padding: 0 35px;
	}

	.svc-footer__main {
		gap: 32px;
	}

	.svc-footer__logo {
		margin-bottom: 6px;
	}

	.svc-footer__logo img {
		width: 159px;
		height: 20.3px;
	}

	#svc-site-footer .svc-footer__tagline {
		font-size: 12px !important;
		margin-bottom: 10px !important;
	}

	.svc-footer__certs {
		gap: 6px;
		margin-bottom: 18px;
	}

	.svc-cert-badge {
		width: 32px;
		height: 32px;
	}

	.svc-cert-badge--pledge {
		width: 33.5px;
		height: 34.8px;
	}

	.svc-footer__brand-divider {
		display: none;
	}

	.svc-footer__social {
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}

	#svc-site-footer .svc-footer__social-heading {
		font-size: 12px !important;
	}

	.svc-footer__social-list {
		gap: 6px;
	}

	.svc-footer__social-link {
		width: 22px;
		height: 22px;
		flex: 0 0 22px;
	}

	.svc-footer__social-link img {
		width: 22px !important;
		height: 22px !important;
	}

	/* Mobile HQ Section */
	.svc-footer__info-col {
		gap: 28px;
	}

	.svc-footer__hq-header {
		gap: 8px;
		margin-bottom: 14px;
	}

	.svc-footer__hq-flag {
		width: 24px;
		height: 24px;
	}

	#svc-site-footer .svc-footer__hq-title {
		font-size: 14px !important;
	}

	.svc-footer__hq-details {
		gap: 12px;
	}

	.svc-footer__hq-icon {
		width: 15px;
	}

	.svc-footer__hq-icon img {
		width: 13px;
		height: auto;
	}

	#svc-site-footer .svc-footer__hq-text,
	#svc-site-footer .svc-footer__hq-label,
	#svc-site-footer .svc-footer__hq-contact-group .svc-footer__hq-text {
		font-size: 12px !important;
		line-height: 1.35 !important;
	}

	.svc-footer__hq-contact-group {
		flex-direction: column;
		gap: 12px;
	}

	#svc-site-footer .svc-footer__hq-text--subphone {
		padding-left: 0 !important;
	}

	/* Mobile Global Offices Horizontal Snap Carousel (Figma Node 2310:1937) */
	#svc-site-footer .svc-footer__offices-title {
		font-size: 14px !important;
		text-align: center !important;
		margin-bottom: 16px !important;
	}

	.svc-footer__offices-grid {
		display: flex;
		width: calc(100% + 70px);
		max-width: 100vw;
		box-sizing: border-box;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 35px;
		-webkit-overflow-scrolling: touch;
		gap: 14px;
		margin: 0 -35px;
		padding: 4px 35px 12px;
		scrollbar-width: none;
	}

	.svc-footer__offices-grid::-webkit-scrollbar {
		display: none;
	}

	.svc-office-card {
		flex: 0 0 254px;
		min-height: 147px;
		padding: 14px 16px;
		scroll-snap-align: start;
		gap: 10px;
	}

	.svc-office-card__flag {
		width: 24px;
		height: 24px;
	}

	#svc-site-footer .svc-office-card__name {
		font-size: 14px !important;
	}

	#svc-site-footer .svc-office-card__address,
	#svc-site-footer .svc-office-card__phone {
		font-size: 12px !important;
		line-height: 1.35 !important;
	}

	.svc-footer__offices-dots {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		margin-top: 8px;
	}

	#svc-site-footer .svc-office-dot {
		display: inline-block !important;
		width: 5px !important;
		height: 5px !important;
		min-width: 5px !important;
		min-height: 5px !important;
		max-width: 5px !important;
		max-height: 5px !important;
		line-height: 0 !important;
		font-size: 0 !important;
		border-radius: 50% !important;
		border: none !important;
		padding: 0 !important;
		margin: 0 !important;
		background-color: rgba(255, 255, 255, 0.35) !important;
		box-shadow: none !important;
		cursor: pointer;
		transition: background-color 0.2s ease, transform 0.2s ease;
	}

	#svc-site-footer .svc-office-dot.is-active {
		background-color: #ffffff !important;
		transform: scale(1.15);
	}

	.svc-footer__bottom {
		margin-top: 24px;
		padding-top: 12px;
		border-top: 1px solid rgba(255, 255, 255, 0.35);
	}

	#svc-site-footer .svc-footer__copyright {
		font-size: 10px !important;
	}

	#svc-site-footer .svc-footer__scroll-top {
		right: 16px;
		bottom: 16px;
		width: 38px !important;
		height: 38px !important;
	}

	#svc-site-footer .svc-footer__scroll-top img {
		width: 38px !important;
		height: 38px !important;
	}
}
