/*
Theme Name: Divi Child
Theme URI: https://www.elegantthemes.com/gallery/divi/
Description: Divi Child Theme
Author: Elegant Themes
Author URI: https://www.elegantthemes.com
Template: Divi
Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */


/* ===========================
General Page Styling
=========================== */
.static-page-content {
	line-height: 1.25;
	color: #022c22;
	background-color: #fff;
	margin: 0 auto;
}

.static-page-content strong {
	font-weight: inherit !important;
}

/* ===========================
Headings h1 - h6
=========================== */
.static-page-content h1 {
	color: #022c22;
	line-height: 1.3;
	margin-bottom: 0.5em;
	padding-bottom: 0px;
}

.static-page-content h2,
.static-page-content h3,
.static-page-content h4,
.static-page-content h5,
.static-page-content h6 {
	color: #022c22;
	line-height: 1.3;
	margin-top: 1.5em;
	margin-bottom: 0.5em;
	padding-bottom: 0px;
}

.static-page-content h1 { font-size: 32px; font-weight: 700; }
.static-page-content h2 { font-size: 26px; font-weight: 600; }
.static-page-content h3 { font-size: 22px; font-weight: 600; }
.static-page-content h4 { font-size: 18px; font-weight: 600; }
.static-page-content h5 { font-size: 16px; font-weight: 600; }
.static-page-content h6 { font-size: 14px; font-weight: 600; }

/* ===========================
Paragraphs
=========================== */
.static-page-content p {
	font-size: 14px;
	line-height: 1.25;
	margin: 0 0 10px 0;
	padding-bottom: 0 !important;
}

/* ===========================
Lists
=========================== */
.static-page-content ul,
.static-page-content ol {
	margin: 0 0 4px 30px;
	padding: 0;
}

.static-page-content li {
	margin-bottom: 2px;
	line-height: 1.25rem;
}

/* Nested lists */
.static-page-content ul ul,
.static-page-content ol ol,
.static-page-content ul ol,
.static-page-content ol ul {
	margin-left: 20px;
	margin-bottom: 4px;
}

/* ===========================
Links
=========================== */
.static-page-content a {
	color: #149365 !important;
	text-decoration: underline;
}

.static-page-content a:hover {
	text-decoration: none;
}

/* ===========================
Small Text
=========================== */
.static-page-content small {
	font-size: 12px;
	color: #022c22;
	line-height: 1.25;
}

/* ===========================
Blockquote
=========================== */
.static-page-content blockquote {
	border-left: 4px solid #ddd;
	padding-left: 15px;
	padding-top: 8px;
	padding-bottom: 8px;
	color: #022c22;
	font-style: italic;
	margin: 16px 0;
	background-color: #f9f9f9;
	font-size: 14px;
	line-height: 1.25;
}

/* ===========================
Tables
=========================== */
.static-page-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 16px 0;
	font-size: 14px;
	line-height: 1.25;
	color: #022c22;
}

.static-page-content th,
.static-page-content td {
	border: 1px solid #ddd;
	padding: 10px;
	text-align: left;
}

.static-page-content th {
	background-color: #f4f4f4;
	font-weight: 600;
}

/* ===========================
Images
=========================== */
.static-page-content img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 15px 0;
}

/* ===========================
Horizontal Rule
=========================== */
.static-page-content hr {
	border: none;
	border-top: 1px solid #ddd;
	margin: 25px 0;
}

/* ===========================
Code / Preformatted Text
=========================== */
.static-page-content pre,
.static-page-content code {
	background-color: #f4f4f4;
	padding: 6px 10px;
	border-radius: 4px;
	font-family: monospace;
	font-size: 13px;
	line-height: 1.25;
	overflow-x: auto;
	color: #022c22;
}

/* ===========================
Section spacing
=========================== */
.static-page-content section {
	margin-bottom: 25px;
}




/* ====================================================== */


/* ===============================
Blog Post Content Typography
================================ */

.blog-post-content {
	line-height: 1.6 !important;
	color: #1D1F1E;
	font-size: 15px !important;
	text-align: left !important;
}

/* Text emphasis */
.blog-post-content strong {
	font-weight: 600 !important;
	color: #1D1F1E !important;
}

.blog-post-content h1 strong,
.blog-post-content h2 strong
.blog-post-content h3 strong
.blog-post-content h4 strong
.blog-post-content h5 strong
.blog-post-content h6 strong{
	font-weight: inherit !important;
}

.blog-post-content em {
	font-style: italic;
}

/* Headings */
.blog-post-content h1 {
	font-size: 32px;
	font-weight: 600;
	margin: 32px 0 16px;
	line-height: 1.25;
	padding-bottom: 0;
	color: #1D1F1E;
}

.blog-post-content h2 {
	font-size: 26px;
	margin: 28px 0 14px;
	line-height: 1.3;
	font-weight: 600;
	padding-bottom: 0;
	position: relative;
	padding-left: 16px;
	color: #1D1F1E;
	border-left: 6px solid #149365 !important;
}

.blog-post-content h3 {
	font-size: 22px;
	margin: 24px 0 12px;
	line-height: 1.35;
	font-weight: 600;
	color: #1D1F1E;
	padding-bottom: 0;
}

.blog-post-content h4 {
	font-size: 18px;
	padding-bottom: 0;
	font-weight: 600;
	margin: 20px 0 10px;
	color: #1D1F1E;
}

.blog-post-content h5 {
	font-size: 16px;
	padding-bottom: 0;
	font-weight: 600;
	margin: 18px 0 8px;
	color: #1D1F1E;
}

.blog-post-content h6 {
	font-size: 14px;
	padding-bottom: 0;
	font-weight: 600;
	margin: 16px 0 6px;
	color: #1D1F1E;
}

/* Paragraph */
.blog-post-content p {
	margin-bottom: 0px;
	padding-bottom: 12px;
}

/* Lists */
.blog-post-content ul,
.blog-post-content ol {
	margin: 0px 0 0px 18px;
	padding-bottom: 10px;
}

.blog-post-content li {
	margin-bottom: 2px;
}

/* Links */
.blog-post-content a {
	color: #149365;
	text-decoration: underline;
}

/* Blockquote */
.blog-post-content blockquote {
	margin: 20px 0;
	padding: 12px 16px;
	border-left: 4px solid #1D1F1E;
	background: #f8fafc;
	font-style: italic;
}

/* Images */
.blog-post-content img {
	max-width: 100%;
	height: auto;
	margin: 16px 0;
	border-radius: 6px;
}

/* Figure */
.blog-post-content figure {
	margin: 20px 0;
	text-align: center;
}

.blog-post-content figcaption {
	font-size: 13px;
	color: #1D1F1E;
	margin-top: 6px;
}

/* Code */
.blog-post-content code {
	background: #1D1F1E;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 14px;
}

.blog-post-content pre {
	background: #0f172a;
	color: #1D1F1E;
	padding: 14px;
	border-radius: 6px;
	overflow-x: auto;
	margin: 18px 0;
}

/* Tables */
.blog-post-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 20px 0;
	font-size: 14px;
}

.blog-post-content th,
.blog-post-content td {
	border: 1px solid #e5e7eb;
	padding: 10px;
	text-align: left;
}

.blog-post-content th {
	background: #f1f5f9;
	font-weight: 600;
}

/* Horizontal rule */
.blog-post-content hr {
	border: none;
	border-top: 1px solid #e5e7eb;
	margin: 32px 0;
}

/* Sup / Sub */
.blog-post-content sup,
.blog-post-content sub {
	font-size: 12px;
}

/* Embedded content */
.blog-post-content iframe {
	max-width: 100%;
	margin: 20px 0;
}

/* ===============================
Tablet (<= 980px)
================================ */
@media (max-width: 980px) {

	.blog-post-content {
		font-size: 14.5px;
	}

	.blog-post-content h1 { font-size: 28px; }
	.blog-post-content h2 { font-size: 24px; }
	.blog-post-content h3 { font-size: 20px; }
	.blog-post-content h4 { font-size: 17px; }
	.blog-post-content h5 { font-size: 15px; }
	.blog-post-content h6 { font-size: 14px; }
}

/* ===============================
Mobile (<= 767px)
================================ */
@media (max-width: 767px) {

	.blog-post-content {
		font-size: 14px;
	}

	.blog-post-content h1 { font-size: 24px; }
	.blog-post-content h2 { font-size: 21px; }
	.blog-post-content h3 { font-size: 18px; }
	.blog-post-content h4 { font-size: 16px; }
	.blog-post-content h5 { font-size: 15px; }
	.blog-post-content h6 { font-size: 14px; }

	.blog-post-content h2 {
		padding-left: 12px;
		border-left-width: 4px;
	}
}


/* ================================================================================================================================================================================================ */

/* ==============================
Case study listing page
============================== */

/* ── Search Section ─────────────────────────────────────── */
.case-study-search-section {
	display: flex;
	justify-content: flex-end;   /* right-aligned, matching designer mockup */
	margin-bottom: 40px;
}

.case-study-search-box {
	position: relative;
}

.case-study-search-box input {
	padding: 8px 35px 8px 20px;
	border: 1px solid #ddd;
	border-radius: 25px;
	min-width: 320px;
	font-size: 14px;
}

.case-study-search-box input:focus {
	outline: none;
	border-color: #149365;
}

.case-study-search-box button {
	position: absolute;
	right: 8px !important;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: transparent;
	color: #8D91A5;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: end;
}

.case-study-search-box button:hover svg path {
	stroke: #149365;
}


/* ==============================
Case Study Grid
============================== */
.case-study-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	margin-top: 40px;
}

/* Card */
.case-study-item {
	display: flex;
	flex-direction: column;
}


.case-study-image-wrap {
	position: relative;
	aspect-ratio: 1200 / 630;
	overflow: hidden;
	border-radius: 10px;
}

.case-study-image-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.case-study-item:hover .case-study-image-wrap img {
	transform: scale(1.04);
}

.case-study-content {
	padding: 16px 0px;
}

/* Company badge */
.case-study-company {
	padding: 4px 14px;
	font-size: 14px;
	font-weight: 500;
	color: #5C5D76;
	border: 2px solid #EEF0F3;
	border-radius: 20px;
}

/* Title */
.case-study-title {
	margin-top: 8px;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.75rem;
	color: #1D1F1E;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	padding: 0px;
}

.case-study-title a {
	color: inherit;
	text-decoration: none;
}

.case-study-title a:hover {
	color: #1a44c2;
}

/* No results */
.no-posts {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 60px 20px;
	text-align: center;
}

.no-posts-text {
	font-size: 16px;
	color: #5C5D76;
	line-height: 1.6;
}

/* ==============================
Pagination
============================== */
.case-pagination {
	display: flex;
	justify-content: center;
	margin-top: 50px;
}

.case-pagination ul {
	display: flex;
	list-style: none;
	gap: 8px;
	padding: 0;
	margin: 0;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

.case-pagination li {
	margin: 0;
}

.case-pagination a,
.case-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	border: 1px solid #E5E7EB;
	border-radius: 8px;
	text-decoration: none;
	color: #5C5D76;
	font-size: 14px;
	font-weight: 500;
	transition: all 0.2s ease;
	background: white;
	white-space: nowrap;
}

.case-pagination a svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.case-pagination a:hover:not(.prev):not(.next) {
	background: #149365;
	color: white;
	border-color: #149365;
	transform: translateY(-1px);
}

/* Previous / Next */
.case-pagination .prev,
.case-pagination .next {
	font-weight: 500;
	min-width: auto;
	padding: 0 16px;
}

.case-pagination .prev:hover,
.case-pagination .next:hover {
	background: #F3F4F6;
	border-color: #D1D5DB;
}

/* Current page */
.case-pagination .current {
	background: #149365;
	color: white;
	border-color: #149365;
	cursor: default;
	font-weight: 500;
}

/* Dots */
.case-pagination .dots {
	border: none;
	cursor: default;
	background: transparent;
	color: #5C5D76;
	min-width: 32px;
}

.case-pagination .dots:hover {
	background: transparent;
	transform: none;
}



/* Loader wrapper */
.loader-wrapper {
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 520px;
}

.loader {
	width: 48px;
	height: 48px;
	border: 6px solid #f3f3f3;
	border-top: 6px solid #19A771;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}


/* ==============================
Responsive
============================== */
@media (max-width: 980px) {
	.case-study-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.case-study-search-section {
		justify-content: flex-start;  /* full width on mobile */
	}

	.case-study-search-box{
		display: flex;
		width: 100%;
	}
	.case-study-search-box input {
		display: flex;
		width: 100%;
		flex: 1;
		min-width: auto;
	}

	.case-study-grid {
		grid-template-columns: repeat(1, 1fr);
	}

	.case-pagination {
		margin-top: 30px;
	}

	.case-pagination ul {
		gap: 6px;
	}

	.case-pagination a,
	.case-pagination span {
		min-width: 40px;
		height: 40px;
		padding: 0 10px;
		font-size: 13px;
		gap: 4px;
	}

	/* Show only icon on Prev/Next */
	.case-pagination .prev,
	.case-pagination .next {
		min-width: 40px;
		padding: 0;
		font-size: 0 !important;
	}

	.case-pagination .prev svg,
	.case-pagination .next svg {
		width: 18px;
		height: 18px;
		margin: 0;
	}

	.case-pagination .dots {
		min-width: 28px;
		font-size: 12px;
	}
}

@media (max-width: 480px) {
	.case-study-grid {
		grid-template-columns: repeat(1, 1fr);
	}

	.case-pagination ul {
		gap: 4px !important;
	}

	.case-pagination a,
	.case-pagination span {
		min-width: 36px;
		height: 36px;
		padding: 0 8px;
		font-size: 12px;
	}

	.case-pagination .prev,
	.case-pagination .next {
		min-width: 36px;
	}

	.case-pagination .prev svg,
	.case-pagination .next svg {
		width: 16px;
		height: 16px;
	}

	.case-pagination .dots {
		min-width: 24px;
	}
}









/* ========================================================================================================================================================================================= */



/* ══════════════════════════════════════════════
FOOTER DESIGN TOKENS
══════════════════════════════════════════════ */
.site-footer {
	--ft-accent: #149365;
	--ft-accent-glow: rgba(20, 147, 101, 0.25);
	--ft-text: #ffffff;
	--ft-text-faint: #6b7a8d;
	--ft-tr: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── FOOTER SHELL ── */
.site-footer {
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	position: relative;
	overflow: hidden;
	color: var(--ft-text);
	box-sizing: border-box;
}

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

.site-footer a {
	color: inherit;
	text-decoration: none;
}
.site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.site-footer button {
	background: none;
	border: none;
	font: inherit;
}

.footer-inner {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding-top: 100px;
}

/* ════════════════════════════════════════════
TOP ROW: logo | app label + store buttons + social
════════════════════════════════════════════ */
.footer-brand-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-bottom: 32px;
}

.footer-logo {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}
.footer-logo__img {
	height: 40px;
	width: auto;
	display: block;
}

.footer-brand-right {
	display: flex;
	align-items: center;
	gap: 20px;
}

.footer-app-label {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}

.footer-app-label__title {
	font-size: 13px;
	font-weight: 600;
	color: var(--ft-text);
}

.footer-app-label__sub {
	font-size: 11px;
	color: var(--ft-text-faint);
}

.footer-apps {
	display: flex;
	/* 	flex-direction: column; */
	gap: 8px;
	flex-shrink: 0;
}

.app-store-img {
	height: 32px;
	width: auto;
	display: block;
	transition: transform var(--ft-tr), opacity var(--ft-tr);
}
.app-store-img:hover {
	transform: translateY(-2px);
	opacity: 0.88;
}

/* ── SOCIAL BUTTONS ── */
.social-btn {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--ft-accent);
	border: 1px solid var(--ft-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 16px;
	transition: transform var(--ft-tr), box-shadow var(--ft-tr);
}
.social-btn:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 20px var(--ft-accent-glow);
}

.social-btn--sm {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	font-size: 14px;
}

/* ════════════════════════════════════════════
NAV — 5 columns in one row
════════════════════════════════════════════ */
.footer-nav {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 40px 24px;
	padding: 40px 0 44px;
	align-items: start;
}


.footer-col__title {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ft-text);
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 14px;
	background-image: linear-gradient(
		90deg,
		rgba(255, 255, 255, 0.8) 0%,
		rgba(255, 255, 255, 0) 40%,
		transparent 100%
	);
	background-size: 100% 1px;
	background-repeat: no-repeat;
	background-position: bottom;
	margin-bottom: 18px;
	user-select: none;
	position: relative;
}

/* .footer-col__links.footer-col__links--solutions{
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
} */

@media (min-width: 769px) {
	.footer-col__title::after {
		content: "";
		position: absolute;
		bottom: -1px;
		left: 0;
		width: 24px;
		height: 2px;
		background: var(--ft-accent);
		border-radius: 2px;
	}
}

.footer-col__chevron {
	display: none;
	width: 16px;
	height: 16px;
	color: var(--ft-text-faint);
	transition: transform var(--ft-tr);
	flex-shrink: 0;
}

.footer-col__links {
	display: flex;
	flex-direction: column;
	gap: 11px;
}

.footer-col__links li a {
	font-size: 14px;
	font-weight: 400;
	color: var(--ft-text);
	display: inline-flex;
	align-items: center;
	gap: 6px;
	line-height: 1.4;
	position: relative;
	padding-bottom: 2px;
	transition: color var(--ft-tr);
}

.footer-col__links li a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: rgba(255, 255, 255, 0.6);
	transition: width var(--ft-tr);
}
.footer-col__links li a:hover::after {
	width: 100%;
}

/* ════════════════════════════════════════════
BOTTOM BAR
════════════════════════════════════════════ */
.footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	flex-wrap: wrap;
}

.footer-bottom__legal {
	display: flex;
	align-items: center;
	gap: 24px !important;
	flex-wrap: wrap;
}

.footer-bottom__legal-label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--ft-text);
}

.footer-bottom__legal a {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.65);
	transition: color var(--ft-tr);
	position: relative;
}
.footer-bottom__legal a:hover {
	color: #ffffff;
}
.footer-bottom__legal a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: rgba(255, 255, 255, 0.6);
	transition: width var(--ft-tr);
}
.footer-bottom__legal a:hover::after {
	width: 100%;
}

.footer-bottom__follow {
	display: flex;
	align-items: center;
	gap: 10px;
}

.footer-bottom__follow-label {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.65);
	margin-right: 4px;
}

/* ════════════════════════════════════════════
COPYRIGHT ROW
════════════════════════════════════════════ */
.footer-copyright {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 0 32px;
}

.footer-bottom__copy {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.45);
	margin: 0;
}

.footer-bottom__copy a {
	color: #FFFFFF;
	transition: color var(--ft-tr);
	position: relative;
}
.footer-bottom__copy a:hover {
	color: var(--ft-accent);
}
.footer-bottom__copy a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: var(--ft-accent);
	transition: width var(--ft-tr);
}
.footer-bottom__copy a:hover::after {
	width: 100%;
}

.footer-system-status {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.45);
	transition: color var(--ft-tr);
}
.footer-system-status:hover {
	color: #ffffff;
}

/* ════════════════════════════════════════════
TABLET ≤ 980px
════════════════════════════════════════════ */
@media (max-width: 980px) {
	.footer-nav {
		grid-template-columns: repeat(3, 1fr);
		gap: 36px 20px;
	}
	.footer-inner {
		padding-top: 80px;
	}
}

/* ════════════════════════════════════════════
MOBILE ≤ 768px — base accordion
════════════════════════════════════════════ */
@media (max-width: 768px) {
	.footer-inner {
		padding-top: 60px;
	}

	.footer-brand-top {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding-bottom: 28px;
	}

	.footer-brand-right {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.footer-app-label {
		align-items: flex-start;
	}

	.footer-apps {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 10px;
	}
	.app-store-img {
		height: 35px;
	}

	.footer-nav {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 0 0 8px;
		border-bottom: none;
	}


	/* col title */
	.footer-col__title {
		padding: 16px 0;
		margin-bottom: 0;
		cursor: pointer;
		background-image: none;
	}
	.footer-col__title::after {
		display: none !important;
	}
	.footer-col__chevron {
		display: block;
	}

	/* normal col chevron rotate */
	.footer-col.is-open > .footer-col__title > .footer-col__chevron {
		transform: rotate(180deg);
	}

	/* normal col links */
	.footer-col__links {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), padding-bottom 0.35s;
		gap: 0;
		padding-bottom: 0;
	}
	.footer-col__links li a {
		padding: 10px 0;
		font-size: 13.5px;
	}
	.footer-col.is-open > .footer-col__links {
		max-height: 800px;
		padding-bottom: 16px;
		gap: 0;
	}

	.footer-col__links.footer-col__links--solutions{
		display: flex;
		grid-template-columns: unset;
	}

	.footer-bottom {
		align-items: flex-start;
		gap: 14px;
		padding: 20px 0;
	}
	.footer-bottom__legal {
		gap: 14px !important;
	}
}

@media (max-width: 576px) {
	.footer-bottom {
		flex-direction: column;
	}
}


/* ════════════════════════════════════════════
DOUBLE COL — Company + Other Products
════════════════════════════════════════════ */
.footer-col--double {
	display: flex;
	flex-direction: column;
}

.footer-col__title--spaced {
	margin-top: 28px;
}

@media (max-width: 768px) {
	.footer-col__title--spaced {
		margin-top: 0;
	}

	/* double col: each title controls its own links via JS inline style */
	.footer-col--double .footer-col__title.is-open .footer-col__chevron {
		transform: rotate(180deg);
	}

	/* double col links start closed — JS overrides with inline style */
	.footer-col--double .footer-col__links {
		max-height: 0;
		overflow: hidden;
		padding-bottom: 0;
		transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), padding-bottom 0.35s;
	}
}

/* ════════════════════════════════════════════
SOLUTIONS — desktop
════════════════════════════════════════════ */
.solutions-group {
	list-style: none;
	margin-bottom: 4px;
}

.solutions-subhead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 14px;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 6px;
}

.solutions-children {
	list-style: none;
	margin: 0 0 14px 0;
	padding: 0 0 0 8px !important;
	border-left: 1.5px solid rgba(20, 147, 101, 0.3);
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.solutions-children li a {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.6);
	transition: color var(--ft-tr);
	position: relative;
}

.solutions-children li a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: rgba(255, 255, 255, 0.6);
	transition: width var(--ft-tr);
}
.solutions-children li a:hover::after {
	width: 100%;
}

.solutions-children li a:hover {
	color: #ffffff;
}
/* .solutions-children li a::after {
display: none;
} */

/* ════════════════════════════════════════════
SOLUTIONS — mobile accordion
════════════════════════════════════════════ */
@media (max-width: 768px) {

	.solutions-subhead {
		cursor: pointer;
		padding: 10px 0;
		margin-bottom: 0;
	}

	.solutions-subhead .footer-col__chevron {
		display: block;
		width: 16px;
		height: 16px;
		flex-shrink: 0;
		color: rgba(255, 255, 255, 0.5);
		transform: rotate(0deg);
		transition: transform var(--ft-tr);
	}

	/* arrow rotate — only when THIS group is open */
	.solutions-group.is-open > .solutions-subhead .footer-col__chevron {
		transform: rotate(180deg);
	}

	/* children always start closed on mobile — JS controls via inline style */
	.solutions-children {
		max-height: 0 !important;
		overflow: hidden;
		margin-bottom: 0;
		padding-bottom: 0;
		transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), padding-bottom 0.35s, margin-bottom 0.35s;
	}

	/* when group is open, JS sets inline style — CSS allows it */
	.solutions-group.is-open > .solutions-children {
		max-height: 600px !important;
		padding-bottom: 10px;
		margin-bottom: 4px;
	}
}

@media (min-width: 769px) {
	.solutions-subhead .footer-col__chevron {
		display: none;
	}
}













/* ========================================================================================================================================================================================= */







/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* ── NAVBAR SCOPED TOKENS ── */
.nb-wrapper,
.nb-drawer,
.nb-mega-menu {
	--nb-bg: #ffffff;
	--nb-surface-2: #f8f9fb;
	--nb-border: rgba(0, 0, 0, 0.08);
	--nb-border-h: rgba(0, 0, 0, 0.15);
	--nb-txt: #1D1F1E;
	--nb-txt-hover: #004B47;
	--nb-txt-2: #5a5c6e;
	--nb-txt-m: #9496a8;
	--nb-accent: #149365;
	--nb-glow: rgba(20, 147, 101, 0.2);
	--nb-teal: #00b894;
	--nb-orange: #e17b2a;
	--nb-nav-h: 52px;
	--nb-r-sm: 6px;
	--nb-r-md: 10px;
	--nb-r-lg: 16px;
	--nb-r-xl: 20px;
	--nb-shadow: 0px 0px 32px 0px #00000033;
	--nb-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
	--nb-mid: 260ms cubic-bezier(0.4, 0, 0.2, 1);
	--nb-slow: 420ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── STICKY HEADER ── */
.et-l--header.is-scrolled {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	box-shadow: 0 0 7px rgba(0, 0, 0, .1) !important;
	transition: box-shadow var(--nb-fast);
}

/* ── WRAPPER ── */
.nb-wrapper {
	width: 100%;
	padding: 12px 0;
}

/* ── NAV ── */
.nb-nav {
	position: relative;
	height: var(--nb-nav-h);
	display: flex;
	align-items: center;
}

/* ── LOGO ── */
.nb-logo {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	/* 	margin-right: auto; */
	text-decoration: none;
}
.nb-logo__img {
	height: 32px;
	width: auto;
	display: block;
}

/* ── NAV CENTER ── */
.nb-center {
	display: flex;
	align-items: center;
	gap: 2px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	list-style: none;
	margin: 0;
	padding: 0 !important;
}
.nb-item {
	position: relative;
	list-style: none;
}

/* ── TRIGGER ── */
.nb-trigger {
	display: flex;
	align-items: center;
	gap: 5px;
	min-height: 44px;
	padding: 8px 14px;
	font-size: 15px;
	font-weight: 500;
	color: var(--nb-txt);
	border-radius: var(--nb-r-sm);
	transition: color var(--nb-fast), background var(--nb-fast);
	cursor: pointer;
	white-space: nowrap;
	letter-spacing: 0.01em;
	background: none;
	border: none;
	text-decoration: none;
}
.nb-trigger:hover,
.nb-item.is-open .nb-trigger {
	color: #004B47;
	background: #F3F4F8;
}
.nb-trigger__chevron {
	width: 14px;
	height: 14px;
	flex-shrink: 0;
	transition: transform var(--nb-mid);
	fill: none;
	stroke: currentColor;
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.nb-trigger__label {
	color: inherit;
	text-decoration: none;
   display: flex;
    align-items: center;
    align-self: stretch;
}
.nb-item.is-open .nb-trigger__chevron {
	transform: rotate(180deg);
}

/* ── DROPDOWN ── */
.nb-dropdown {
	position: absolute;
	top: calc(var(--nb-nav-h) + 12px);
	left: 50%;
	transform: translateX(-50%) translateY(-6px);
	min-width: 250px;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(64px);
	-webkit-backdrop-filter: blur(64px);
	border: 1px solid var(--nb-border);
	border-radius: var(--nb-r-lg);
	padding: 8px;
	box-shadow: var(--nb-shadow);
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--nb-mid), transform var(--nb-mid);
	z-index: 300;
}
.nb-item.is-open .nb-dropdown {
	opacity: 1;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}
.nb-dropdown__row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 12px;
	border-radius: var(--nb-r-md);
	transition: background var(--nb-fast);
	cursor: pointer;
	text-decoration: none;
}
.nb-dropdown__row:hover {
	background: #E8FCEA;
}
.nb-dropdown__icon {
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--nb-txt);
}
.nb-dropdown__row:hover .nb-dropdown__icon {
	color: var(--nb-txt-hover);
}

.nb-dropdown__icon i,
.nb-dropdown__icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.5;
}
.nb-dropdown__label {
	font-size: 15px;
	font-weight: 500;
	color: #1D1F1E;
}
.nb-dropdown__sep {
	height: 1px;
	background: var(--nb-border);
	margin: 6px 4px;
}

/* ── MEGA MENU ── */
/* .nb-item--mega {
position: relative;
}

.nb-item--mega::after {
content: "";
position: absolute;
top: 100%;
left: 0;
right: 0;
height: 16px;
background: transparent;
z-index: 299;
} */

.nb-mega-menu {
	position: fixed;
	/* 	top: calc(var(--nb-nav-h) + 12px); */
	margin-top: calc(var(--nb-nav-h) + 12px);
	top: 0;
	left: 50%;
	transform: translateX(-50%) translateY(-8px);
	width: 1000px;
	max-width: 1000px;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(64px);
	-webkit-backdrop-filter: blur(64px);
	border-radius: var(--nb-r-xl);
	box-shadow: var(--nb-shadow);
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--nb-mid), transform var(--nb-mid);
	z-index: 300;
	display: grid;
	grid-template-columns: 240px 1fr;
	overflow: hidden;
}
.nb-item--mega.is-open .nb-mega-menu {
	opacity: 1;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}

/* Mega sidebar */
.nb-mega-sidebar {
	background: var(--nb-surface-2);
	border-right: 1px solid var(--nb-border);
	padding: 18px 12px;
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.nb-mega-sidebar__btn {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-radius: var(--nb-r-md);
	cursor: pointer;
	transition: background var(--nb-fast), color var(--nb-fast);
	color: #1D1F1E;
	font-size: 1rem;
	font-weight: 500;
	width: 100%;
	text-align: left;
	background: none;
	border: none;
}
.nb-mega-sidebar__btn:hover,
.nb-mega-sidebar__btn.is-active {
	background: #E8FCEA;
	color: var(--nb-txt-hover);
}
.nb-mega-sidebar__icon {
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--nb-txt);
}

.nb-mega-sidebar__btn:hover .nb-mega-sidebar__icon,
.nb-mega-sidebar__btn.is-active .nb-mega-sidebar__icon {
	color: var(--nb-txt-hover);
}

.nb-mega-sidebar__icon:empty {
	display: none;
}
.nb-mega-sidebar__icon i,
.nb-mega-sidebar__icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.5;
}

/* Mega panels */
.nb-mega-panels {
	padding: 24px;
}
.nb-mega-panel {
	display: none;
	animation: nb-panel-fade 200ms ease;
}
.nb-mega-panel.is-active {
	display: block;
}
@keyframes nb-panel-fade {
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Mega link list */
.nb-link-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1px;
	list-style: none;
	margin: 0;
	padding: 0 !important;
}
.nb-link-list li {
	list-style: none;
}
.nb-menu-link {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px 10px;
	border-radius: var(--nb-r-md);
	font-size: 15px;
	font-weight: 500;
	color: #1D1F1E;
	transition: background var(--nb-fast), color var(--nb-fast);
	text-decoration: none;
}
.nb-menu-link:hover {
	background: #E8FCEA;
	color: var(--nb-txt-hover);
}
.nb-menu-link__icon {
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--nb-txt);
}
.nb-menu-link:hover .nb-menu-link__icon{
	color: var(--nb-txt-hover);
}
.nb-menu-link__icon i,
.nb-menu-link__icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.5;
}

/* ── NAV RIGHT ── */
.nb-right {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-left: auto;
	flex-shrink: 0;
}
.nb-btn-login {
	padding: 8px 24px;
	font-size: 15px;
	font-weight: 500;
	color: #1D1F1E;
	border-radius: var(--nb-r-sm);
	transition: color var(--nb-fast), background var(--nb-fast);
	text-decoration: none;
	background: none;
	border: none;
	cursor: pointer;
}
.nb-btn-login:hover {
	color: #004B47;
	background: #F3F4F8;
}
.nb-btn-cta {
	padding: 8px 24px;
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	background: var(--nb-accent);
	border-radius: var(--nb-r-sm);
	letter-spacing: 0.01em;
	transition: transform var(--nb-fast);
	text-decoration: none;
	border: none;
	cursor: pointer;
}
.nb-btn-cta:hover {
	transform: translateY(-1px);
}
.nb-btn-cta:active {
	transform: translateY(0);
}

/* ── HAMBURGER ── */
.nb-hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: var(--nb-r-sm);
	gap: 5px;
	flex-shrink: 0;
	margin-left: 12px;
	transition: background var(--nb-fast);
	background: none;
	border: none;
	cursor: pointer;
}
.nb-hamburger:hover,
.nb-hamburger.is-open {
	background: #E8FCEA;
}
.nb-hamburger__bar {
	width: 20px;
	height: 1.5px;
	background: var(--nb-txt-2);
	border-radius: 2px;
	transform-origin: center;
	transition: transform var(--nb-mid), opacity var(--nb-mid);
}
.nb-hamburger.is-open .nb-hamburger__bar:nth-child(1) {
	transform: translateY(6.5px) rotate(45deg);
}
.nb-hamburger.is-open .nb-hamburger__bar:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}
.nb-hamburger.is-open .nb-hamburger__bar:nth-child(3) {
	transform: translateY(-6.5px) rotate(-45deg);
}

/* ── MOBILE DRAWER ── */
.nb-drawer {
	position: fixed;
	top: calc(var(--nb-nav-h) + 24px);
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--nb-mid), visibility var(--nb-mid);
	z-index: 99998;
}
.nb-drawer.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.nb-drawer__inner {
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	background: var(--nb-bg);
	height: 100%;
	overflow: hidden;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
}
.nb-drawer__scroll {
	flex: 1;
	overflow-y: auto;
	padding: 8px 19px;
}
.nb-drawer__scroll::-webkit-scrollbar { width: 4px; }
.nb-drawer__scroll::-webkit-scrollbar-track { background: transparent; }
.nb-drawer__scroll::-webkit-scrollbar-thumb {
	background: var(--nb-border);
	border-radius: 4px;
}

/* ── MOBILE LINKS ── */
.nb-mobile-link {
	display: flex;
	align-items: center;
	padding: 13px 16px;
	font-size: 1rem;
	font-weight: 500;
	color: var(--nb-txt);
	border-radius: var(--nb-r-md);
	transition: background var(--nb-fast), color var(--nb-fast);
	text-decoration: none;
}
.nb-mobile-link:hover {
	background: rgba(0, 0, 0, 0.04);
	color: var(--nb-txt-hover);
}

/* ── MOBILE ACCORDION ── */
.nb-accordion {
	border-radius: var(--nb-r-md);
}
.nb-accordion__trigger {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 13px 16px;
	font-size: 1rem;
	font-weight: 500;
	color: var(--nb-txt);
	border-radius: var(--nb-r-md);
	transition: background var(--nb-fast), color var(--nb-fast);
	text-align: left;
	background: none;
	border: none;
	cursor: pointer;
}
.nb-accordion__trigger:hover,
.nb-accordion.is-open > .nb-accordion__trigger {
	background: rgba(0, 0, 0, 0.04);
	color: var(--nb-txt-hover);
}
.nb-accordion__chevron {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform var(--nb-mid);
}
.nb-accordion.is-open > .nb-accordion__trigger .nb-accordion__chevron {
	transform: rotate(180deg);
}
.nb-accordion__body {
	max-height: 0;
	overflow: hidden;
	transition: max-height var(--nb-slow);
}
.nb-accordion.is-open > .nb-accordion__body {
	max-height: 1400px;
}
.nb-accordion__content {
	padding: 4px 8px 8px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

/* L2 accordion */
.nb-accordion--l2 .nb-accordion__trigger {
	padding: 10px 14px;
}
.nb-accordion--l2 .nb-accordion__trigger:hover,
.nb-accordion--l2.is-open > .nb-accordion__trigger {
	background: rgba(0, 0, 0, 0.04);
}
.nb-accordion--l2 .nb-accordion__content {
	padding: 2px 6px 6px;
}
.nb-accordion--l2 .nb-accordion__body { max-height: 0; }
.nb-accordion--l2.is-open > .nb-accordion__body { max-height: 700px; }

.nb-l2-inner {
	display: flex;
	align-items: center;
	gap: 10px;
}
.nb-l2-icon {
	width: 20px;
	height: 20px;
	border-radius: 7px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.nb-l2-icon:empty { display: none; }
.nb-l2-icon i,
.nb-l2-icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.5;
}

/* Mobile sub link */
.nb-sub-link {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 9px 14px;
	font-size: 1rem;
	font-weight: 400;
	color: var(--nb-txt);
	border-radius: var(--nb-r-sm);
	transition: background var(--nb-fast), color var(--nb-fast);
	text-decoration: none;
}
.nb-sub-link:hover {
	background: rgba(0, 0, 0, 0.04);
	color: var(--nb-txt-hover);
}
.nb-sub-link__icon {
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--nb-txt);
}

.nb-sub-link:hover .nb-sub-link__icon {
	color: var(--nb-txt-hover);
}

.nb-sub-link__icon i,
.nb-sub-link__icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.5;
}

/* ── MOBILE CTA ── */
.nb-mobile-cta {
	padding: 12px 19px 24px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	background: var(--nb-bg);
	flex-shrink: 0;
}
.nb-mobile-cta__login {
	display: block;
	text-align: center;
	padding: 13px;
	font-size: 14px;
	font-weight: 500;
	color: var(--nb-txt-2);
	border: 1px solid var(--nb-border);
	border-radius: var(--nb-r-md);
	transition: background var(--nb-fast), color var(--nb-fast), border-color var(--nb-fast);
	text-decoration: none;
}
.nb-mobile-cta__login:hover {
	background: rgba(0, 0, 0, 0.04);
	color: var(--nb-txt);
	border-color: var(--nb-border-h);
}
.nb-mobile-cta__btn {
	display: block;
	text-align: center;
	padding: 14px;
	font-size: 14px;
	font-weight: 500;
	color: #fff;
	background: linear-gradient(135deg, #149365 0%, #0d6b4a 100%);
	border-radius: var(--nb-r-md);
	box-shadow: 0 4px 20px var(--nb-glow);
	transition: opacity var(--nb-fast), transform var(--nb-fast);
	text-decoration: none;
}
.nb-mobile-cta__btn:hover {
	opacity: 0.9;
	transform: translateY(-1px);
}

/* ── RESPONSIVE ── */
@media (max-width: 980px) {
	.nb-center,
	.nb-right { display: none; }
	.nb-hamburger {
		display: flex;
		margin-left: auto;
	}
	.nb-logo { margin-right: 0; }
}

/* ── FOCUS ── */
.nb-wrapper :focus-visible,
.nb-drawer :focus-visible {
	outline: 2px solid #149365;
	outline-offset: 2px;
	border-radius: 4px;
}














/* Gain.io Blog CTA Banner */
.ed-blog-cta {
    background: #fff;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px 0;
    width: 100%;
    gap: 24px;
    margin: 24px auto;
    box-sizing: border-box;
}
.ed-blog-cta__logo {
    flex-shrink: 0;
}
.ed-blog-cta__logo-img {
    max-width: 150px !important;
    height: 35px !important;
    object-fit: contain !important;
    display: block !important;
	margin: 0 !important;
}

.ed-blog-cta__logo-img img {
    max-width: 150px !important;
    height: 35px !important;
    object-fit: contain !important;
    display: block !important;
	margin: 0 !important;
}

.ed-blog-cta__tagline {
    flex: 1;
    font-size: 15px;
    font-weight: 500;
    color: #1d1f1e;
    margin: 0;
	text-align: center !important;
}
.ed-blog-cta__btn {
    background: #149365;
    color: #fff !important;
    border: none;
    border-radius: 6px;
    padding: 11px 22px;
    font-size: 15px;
    line-height: normal;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    letter-spacing: 0.01em;
    transition: background 0.2s;
    text-decoration: none !important;
    display: inline-block;
}
.ed-blog-cta__btn:hover {
    background: #19A771;
}

/* Mobile Responsive */
@media (max-width: 980px) {
    .ed-blog-cta {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 24px 16px;
        gap: 16px;
    }
    .ed-blog-cta__tagline {
        font-size: 14px;
    }
    .ed-blog-cta__btn {
        width: 100%;
        text-align: center;
        padding: 12px 20px;
    }
}