/*
 * GOSTExpert Premium 8.2.1
 * Final visual and compatibility layer. Loaded after all legacy theme styles.
 */

:root {
	--ge-navy-950: #031b2e;
	--ge-navy-900: #052640;
	--ge-navy-800: #083657;
	--ge-navy-700: #0d476f;
	--ge-blue-100: #eaf3f8;
	--ge-ink: #182b3b;
	--ge-muted: #667684;
	--ge-line: #dbe5ec;
	--ge-surface: #ffffff;
	--ge-surface-soft: #f5f8fa;
	--ge-yellow: #ffca0a;
	--ge-yellow-strong: #f2b900;
	--ge-red: #e72b34;
	--ge-success: #17b56b;
	--ge-radius-sm: 9px;
	--ge-radius: 14px;
	--ge-radius-lg: 22px;
	--ge-shadow-sm: 0 8px 22px rgba(3, 31, 52, .08);
	--ge-shadow: 0 18px 44px rgba(3, 31, 52, .12);
	--ge-shadow-lg: 0 28px 70px rgba(3, 31, 52, .17);
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	overflow-x: hidden;
	background: #fff;
	color: var(--ge-ink);
	font-family: "Roboto", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.62;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.ge-menu-open,
body.ge-modal-open {
	overflow: hidden;
}

::selection {
	background: var(--ge-yellow);
	color: var(--ge-navy-950);
}

img {
	height: auto;
}

a {
	color: var(--ge-navy-700);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, opacity .2s ease;
}

a:hover,
a:focus {
	color: var(--ge-red);
	text-decoration: none;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
a {
	-webkit-tap-highlight-color: transparent;
}

:focus-visible {
	outline: 3px solid rgba(255, 202, 10, .72);
	outline-offset: 3px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--ge-navy-900);
	font-family: "Roboto Condensed", "Roboto", Arial, sans-serif;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.018em;
}

h1 { font-size: clamp(32px, 4vw, 48px); }
h2 { font-size: clamp(28px, 3vw, 38px); }
h3 { font-size: clamp(22px, 2.2vw, 28px); }

p {
	margin: 0 0 18px;
}

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

.boxed_wrapper,
.main-wrapper {
	width: 100%;
	max-width: none;
	background: #fff;
}

.container {
	width: min(1180px, calc(100% - 40px));
	max-width: 1180px;
	padding-right: 0;
	padding-left: 0;
}

.section-padding {
	padding-top: clamp(56px, 6.5vw, 88px);
	padding-bottom: clamp(56px, 6.5vw, 88px);
}

.thm-btn,
button.thm-btn,
input[type="submit"].thm-btn,
.home-contact-form input[type="submit"],
.wpcf7-form input[type="submit"] {
	min-height: 48px;
	border: 1px solid var(--ge-yellow-strong);
	border-radius: 10px;
	background: linear-gradient(180deg, #ffd842 0%, var(--ge-yellow) 100%);
	box-shadow: 0 9px 20px rgba(238, 181, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .62);
	color: var(--ge-navy-950);
	font-family: "Roboto Condensed", "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 46px;
	letter-spacing: .015em;
	text-transform: uppercase;
	transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.thm-btn:hover,
.thm-btn:focus,
.home-contact-form input[type="submit"]:hover,
.wpcf7-form input[type="submit"]:hover {
	border-color: var(--ge-navy-800);
	background: var(--ge-navy-800);
	box-shadow: 0 13px 28px rgba(5, 38, 64, .23);
	color: #fff;
	transform: translateY(-1px);
}

/* Utility bar */
.ge-topbar {
	min-height: 48px;
	padding: 0;
	border: 0;
	background:
		radial-gradient(circle at 78% 0, rgba(30, 111, 159, .22), transparent 36%),
		linear-gradient(100deg, var(--ge-navy-950), var(--ge-navy-800));
	color: rgba(255, 255, 255, .88);
}

.ge-topbar__inner {
	display: flex;
	min-height: 48px;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.ge-topbar__statement,
.ge-topbar__contacts,
.ge-topbar__contacts > a,
.ge-topbar__socials {
	display: flex;
	align-items: center;
}

.ge-topbar__statement {
	gap: 10px;
	font-size: 13px;
	line-height: 1.2;
}

.ge-topbar__statement strong,
.ge-topbar__statement small {
	display: block;
}

.ge-topbar__statement strong {
	color: #fff;
	font-weight: 600;
}

.ge-topbar__statement small {
	margin-top: 2px;
	color: rgba(255, 255, 255, .66);
	font-size: 11px;
}

.ge-status-dot {
	position: relative;
	flex: 0 0 9px;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--ge-success);
	box-shadow: 0 0 0 5px rgba(23, 181, 107, .12);
}

.ge-topbar__contacts {
	gap: 20px;
}

.ge-topbar__contacts > a {
	gap: 8px;
	color: rgba(255, 255, 255, .9);
	font-size: 13px;
}

.ge-topbar__contacts > a:hover {
	color: var(--ge-yellow);
}

.ge-topbar__socials {
	gap: 7px;
	padding-left: 19px;
	border-left: 1px solid rgba(255, 255, 255, .19);
}

.ge-topbar__socials a {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .17);
	border-radius: 50%;
	background: rgba(255, 255, 255, .08);
	color: #fff;
}

.ge-topbar__socials a:hover {
	border-color: rgba(255, 202, 10, .55);
	background: rgba(255, 202, 10, .14);
	color: var(--ge-yellow);
	box-shadow: 0 0 20px rgba(255, 202, 10, .17);
}

/* Main header */
header.ge-header {
	padding: 16px 0;
	border: 0;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 1px 0 var(--ge-line);
}

.ge-header__inner {
	display: flex;
	min-height: 72px;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
}

.ge-brand {
	position: relative;
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	padding: 4px 8px;
	border-radius: 14px;
}

.ge-brand::after {
	position: absolute;
	z-index: -1;
	inset: 10px;
	border-radius: 50%;
	background: rgba(255, 202, 10, .28);
	content: "";
	filter: blur(20px);
	opacity: 0;
	transition: opacity .24s ease;
}

.ge-brand:hover::after,
.ge-brand:focus-visible::after {
	opacity: 1;
}

.ge-brand img {
	display: block;
	width: auto;
	max-width: 270px;
	height: 65px;
	object-fit: contain;
}

.ge-header__contacts {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: flex-end;
	gap: 22px;
}

.ge-header-contact {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 11px;
	color: var(--ge-ink);
}

a.ge-header-contact:hover {
	color: var(--ge-navy-700);
}

.ge-header-contact__icon {
	display: grid;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	place-items: center;
	border: 1px solid #e0e8ee;
	border-radius: 12px;
	background: var(--ge-surface-soft);
	color: var(--ge-red);
	font-size: 23px;
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.ge-header-contact:hover .ge-header-contact__icon {
	border-color: rgba(255, 202, 10, .75);
	background: #fffaf0;
	box-shadow: 0 7px 16px rgba(3, 31, 52, .09);
}

.ge-header-contact__copy {
	display: block;
	line-height: 1.28;
}

.ge-header-contact__copy strong,
.ge-header-contact__copy small {
	display: block;
}

.ge-header-contact__copy strong {
	color: var(--ge-navy-900);
	font-size: 14px;
	font-weight: 700;
}

.ge-header-contact__copy small {
	margin-top: 3px;
	color: var(--ge-muted);
	font-size: 12px;
}

.ge-header__actions {
	display: flex;
	align-items: stretch;
	gap: 10px;
}

.ge-icon-action {
	display: grid;
	width: 50px;
	min-height: 50px;
	place-items: center;
	border: 1px solid rgba(231, 43, 52, .24);
	border-radius: 12px;
	background: #fff7f7;
	color: var(--ge-red);
	font-size: 24px;
}

.ge-icon-action:hover {
	border-color: var(--ge-red);
	background: var(--ge-red);
	box-shadow: 0 11px 22px rgba(231, 43, 52, .2);
	color: #fff;
}

.ge-request-button {
	padding: 0 20px;
	white-space: nowrap;
}

/* Primary navigation */
.ge-navigation {
	position: relative;
	z-index: 150;
	min-height: 62px;
	border: 0;
	border-bottom: 1px solid rgba(255, 202, 10, .34);
	background:
		linear-gradient(105deg, #031d32 0%, #073653 52%, #041f35 100%);
	box-shadow: 0 10px 28px rgba(2, 26, 44, .16);
}

.ge-navigation.stricky-fixed {
	background: rgba(3, 31, 52, .97);
	backdrop-filter: blur(15px);
}

.ge-navigation__inner {
	display: flex;
	min-height: 62px;
	align-items: stretch;
	justify-content: space-between;
	gap: 14px;
}

.ge-navigation .mainmenu-holder {
	display: flex;
	float: none;
	flex: 1 1 auto;
}

.ge-navigation .nav-header {
	width: 100%;
}

.ge-navigation .nav-header > ul {
	display: flex;
	height: 100%;
	align-items: stretch;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li {
	position: relative;
	display: flex;
	float: none;
	align-items: stretch;
	margin: 0 2px !important;
	padding: 0 !important;
	line-height: normal !important;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li::before,
.ge-navigation .mainmenu-holder .nav-header > ul > li::after {
	display: none !important;
	content: none !important;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > a {
	position: relative;
	display: flex;
	min-height: 48px;
	align-items: center;
	align-self: center;
	margin: 7px 0;
	padding: 0 clamp(16px, 1.75vw, 26px);
	border: 1px solid transparent !important;
	border-radius: 10px;
	background: transparent !important;
	color: rgba(255, 255, 255, .92);
	font-family: "Roboto Condensed", "Roboto", sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1.15;
	text-transform: uppercase;
	transition: color .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li:first-child > a {
	border-left-color: transparent !important;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > a::before {
	position: absolute;
	right: 15px;
	bottom: 5px;
	left: 15px;
	width: auto !important;
	height: 2px;
	border: 0;
	border-radius: 999px;
	background: var(--ge-yellow) !important;
	background-image: none !important;
	content: "";
	display: block !important;
	opacity: 0;
	transform: scaleX(.35);
	transition: opacity .2s ease, transform .2s ease;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li:hover > a,
.ge-navigation .mainmenu-holder .nav-header > ul > li.active > a,
.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-item > a,
.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-ancestor > a {
	border-color: rgba(255, 202, 10, .28) !important;
	background: linear-gradient(145deg, rgba(255, 202, 10, .13), rgba(255, 255, 255, .055)) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .07);
	color: var(--ge-yellow);
}

.ge-navigation .mainmenu-holder .nav-header > ul > li:hover > a::before,
.ge-navigation .mainmenu-holder .nav-header > ul > li.active > a::before,
.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-item > a::before,
.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-ancestor > a::before {
	opacity: 1;
	transform: scaleX(1);
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > ul,
.ge-navigation .mainmenu-holder .nav-header > ul > li > ul > li > ul {
	top: 100%;
	width: 280px;
	padding: 9px;
	border: 1px solid rgba(255, 202, 10, .18);
	border-radius: 0 0 15px 15px;
	background: rgba(3, 28, 47, .985);
	box-shadow: var(--ge-shadow-lg);
	backdrop-filter: blur(18px);
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > ul li {
	border: 0;
	line-height: normal !important;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > ul li a {
	padding: 11px 13px !important;
	border: 0 !important;
	border-radius: 8px;
	background: transparent !important;
	color: rgba(255, 255, 255, .86);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
}

.ge-navigation .mainmenu-holder .nav-header > ul > li > ul li:hover > a,
.ge-navigation .mainmenu-holder .nav-header > ul > li > ul li.current-menu-item > a {
	background: rgba(255, 202, 10, .13) !important;
	color: var(--ge-yellow);
}

.ge-navigation .mainmenu-holder .nav-header .navigation .dropdown-expander {
	display: none;
}

.ge-navigation .nav-footer {
	display: none;
}

.ge-search-toggle {
	display: grid;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	align-self: center;
	place-items: center;
	border: 1px solid var(--ge-yellow-strong);
	border-radius: 11px;
	background: var(--ge-yellow);
	box-shadow: 0 8px 18px rgba(255, 202, 10, .18);
	color: var(--ge-navy-950);
	font-size: 19px;
	transition: background-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.ge-search-toggle:hover,
.ge-search-toggle[aria-expanded="true"] {
	background: #fff;
	box-shadow: 0 12px 26px rgba(0, 0, 0, .22);
	color: var(--ge-navy-900);
}

.ge-search-panel {
	position: fixed;
	z-index: 4000;
	inset: 0;
	display: grid;
	place-items: start center;
	padding: clamp(96px, 15vh, 150px) 20px 30px;
	background: rgba(2, 22, 38, .68);
	backdrop-filter: blur(8px);
}

.ge-search-panel[hidden] {
	display: none;
}

.ge-search-panel__card {
	position: relative;
	width: min(720px, 100%);
	padding: 29px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 20px;
	background: rgba(255, 255, 255, .96);
	box-shadow: var(--ge-shadow-lg);
}

.ge-search-panel__card > strong {
	display: block;
	margin-bottom: 18px;
	color: var(--ge-navy-900);
	font-size: 24px;
	text-align: center;
}

.ge-search-panel__card form {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 10px;
}

.ge-search-panel__card input {
	width: 100%;
	height: 52px;
	padding: 0 16px;
	border: 1px solid #c8d6e0;
	border-radius: 10px;
	background: #fff;
	color: var(--ge-ink);
}

.ge-search-panel__card input:focus {
	border-color: var(--ge-navy-700);
	box-shadow: 0 0 0 4px rgba(13, 71, 111, .09);
	outline: 0;
}

.ge-search-panel__card form button {
	min-width: 120px;
	border: 1px solid var(--ge-yellow-strong);
	border-radius: 10px;
	background: var(--ge-yellow);
	color: var(--ge-navy-950);
	font-weight: 700;
}

.ge-search-close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	color: var(--ge-muted);
	font-size: 28px;
	line-height: 1;
	transition: color .2s ease, transform .2s ease;
}

.ge-search-close:hover {
	color: var(--ge-red);
	transform: rotate(90deg);
}

/* Banner and breadcrumbs */
.inner-banner {
	position: relative;
	display: grid;
	min-height: 220px;
	padding: 52px 0;
	place-items: center;
	overflow: hidden;
	background-color: var(--ge-navy-900);
	background-image: url("../img/resources/inner-banner.jpg");
	background-position: center;
	background-size: cover;
}

.inner-banner::before {
	background:
		linear-gradient(90deg, rgba(3, 27, 46, .91), rgba(6, 48, 79, .77) 50%, rgba(3, 27, 46, .87));
}

.inner-banner::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(255, 255, 255, .035), transparent 50%);
	content: "";
	pointer-events: none;
}

.inner-banner h2 {
	position: relative;
	z-index: 1;
	max-width: 980px;
	margin: 0 auto;
	color: var(--ge-yellow);
	font-size: clamp(30px, 3.2vw, 44px);
	font-weight: 500;
	letter-spacing: .025em;
	line-height: 1.18;
	text-shadow: 0 3px 22px rgba(0, 0, 0, .34);
}

.bread-cumb {
	position: relative;
	z-index: 3;
	border-bottom: 1px solid var(--ge-line);
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 5px 18px rgba(3, 31, 52, .045);
}

.bread-cumb::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent 5%, var(--ge-yellow) 34%, rgba(255, 202, 10, .08) 70%, transparent 95%);
	content: "";
}

.bread-cumb .container {
	padding-top: 5px;
	padding-bottom: 5px;
	text-align: center;
}

.bread-cumb ul {
	display: flex;
	min-height: 54px;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 2px;
}

.bread-cumb ul li,
.bread-cumb ul li a,
.bread-cumb ul li span {
	color: var(--ge-muted);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
}

.bread-cumb ul li:first-child a {
	color: var(--ge-navy-900);
	font-weight: 700;
}

.bread-cumb ul li a {
	display: inline;
}

.bread-cumb ul li a:hover {
	color: var(--ge-red);
}

.bread-cumb ul li a::after {
	margin-right: 10px;
	margin-left: 10px;
	color: #9eabb5;
	font-size: 12px;
}

/* Content system */
.news-content,
.thm-unit-test,
.single-service-page,
.project-content,
.contact-section {
	color: var(--ge-ink);
}

.news-content.section-padding {
	padding-top: clamp(48px, 5vw, 72px);
}

.thm-unit-test,
.single-blog-post .content-box,
.single-service-page .content-box {
	font-size: 17px;
	line-height: 1.72;
}

.thm-unit-test > :first-child,
.single-service-page .content-box > :first-child {
	margin-top: 0;
}

.thm-unit-test h1,
.thm-unit-test h2,
.thm-unit-test h3,
.thm-unit-test h4,
.wpb_text_column h1,
.wpb_text_column h2,
.wpb_text_column h3,
.wpb_text_column h4 {
	margin-top: 1.35em;
	margin-bottom: .62em;
}

.thm-unit-test h2,
.wpb_text_column h2 {
	position: relative;
	padding-bottom: 12px;
}

.thm-unit-test h2::after,
.wpb_text_column h2::after {
	position: absolute;
bottom: 0;
left: 0;
width: 64px;
height: 3px;
border-radius: 3px;
background: var(--ge-yellow);
content: "";
}

.thm-unit-test ul,
.thm-unit-test ol,
.wpb_text_column ul,
.wpb_text_column ol {
	margin: 0 0 22px;
	padding-left: 24px;
}

.thm-unit-test li,
.wpb_text_column li {
	margin-bottom: 7px;
}

.thm-unit-test blockquote,
.wpb_text_column blockquote {
	margin: 28px 0;
	padding: 22px 24px;
	border: 0;
	border-left: 4px solid var(--ge-yellow);
	border-radius: 0 var(--ge-radius) var(--ge-radius) 0;
	background: var(--ge-surface-soft);
	box-shadow: var(--ge-shadow-sm);
	color: var(--ge-navy-900);
	font-size: 18px;
}

.thm-unit-test img,
.wpb_text_column img,
.single-blog-post img {
	border-radius: var(--ge-radius);
}

.section-title {
	margin-bottom: 38px;
}

.section-title h2 {
	display: flex;
	align-items: center;
	gap: 18px;
	background: none;
}

.section-title h2::after {
	flex: 1 1 auto;
	height: 1px;
	background: linear-gradient(90deg, var(--ge-line), transparent);
	content: "";
}

.section-title h2 span,
.section-title.text-center h2 span {
	padding: 0;
	background: transparent;
	color: var(--ge-navy-900);
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 700;
}

.section-title.text-center h2 {
	justify-content: center;
}

.section-title.text-center h2::before,
.section-title.text-center h2::after {
	flex: 1 1 100px;
	max-width: 150px;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--ge-line));
	content: "";
}

.section-title.text-center h2::after {
	background: linear-gradient(90deg, var(--ge-line), transparent);
}

/* Services and premium cards */
.our-services {
	background: #fff;
}

.our-services .row {
	display: flex;
	flex-wrap: wrap;
}

.our-services .row > [class*="col-"] {
	display: flex;
	margin-bottom: 30px;
}

.our-services .single-our-service {
	display: flex;
	width: 100%;
	min-height: 100%;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--ge-line);
	border-radius: var(--ge-radius-lg);
	background: #fff;
	box-shadow: var(--ge-shadow-sm);
	transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.our-services .single-our-service:hover {
	border-color: rgba(255, 202, 10, .9);
	box-shadow: var(--ge-shadow);
	transform: translateY(-4px);
}

.our-services .single-our-service .img-box {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--ge-blue-100);
}

.our-services .single-our-service .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .55s ease;
}

.our-services .single-our-service:hover .img-box img {
	transform: scale(1.035);
}

.our-services .single-our-service .img-box .overlay {
	background: linear-gradient(180deg, transparent 42%, rgba(3, 27, 46, .88));
	opacity: 0;
}

.our-services .single-our-service:hover .img-box .overlay {
	opacity: 1;
}

.our-services .single-our-service .img-box .overlay .box .box-content a {
	border: 1px solid rgba(255, 255, 255, .55);
	border-radius: 8px;
	background: rgba(3, 31, 52, .76);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
}

.our-services .single-our-service > a {
	display: block;
	padding: 21px 22px 8px;
}

.our-services .single-our-service h3 {
	min-height: 0;
	margin: 0;
	color: var(--ge-navy-900);
	font-size: clamp(17px, 1.45vw, 20px);
	line-height: 1.25;
	text-align: center;
	text-transform: uppercase;
}

.our-services .single-our-service > p {
	margin: 0;
	padding: 4px 22px 24px;
	color: var(--ge-muted);
	font-size: 15px;
	line-height: 1.55;
	text-align: center;
}

.our-features .row,
.single-service-page .row {
	display: flex;
	flex-wrap: wrap;
}

.our-features .row > [class*="col-"],
.single-service-page .row > [class*="col-"] {
	display: flex;
	float: none;
}

.single-our-feature {
	position: relative;
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 28px 24px;
	border: 1px solid var(--ge-line);
	border-radius: var(--ge-radius-lg);
	background: #fff;
	box-shadow: var(--ge-shadow-sm);
	text-align: center;
	transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.single-our-feature:hover {
	border-color: rgba(255, 202, 10, .92);
	box-shadow: var(--ge-shadow);
	transform: translateY(-3px);
}

.single-our-feature .icon-box {
	display: grid;
	width: 86px;
	height: 86px;
	margin: 0 auto 20px;
	place-items: center;
	border: 2px solid var(--ge-navy-800);
	border-radius: 24px;
	background: #fff;
	color: var(--ge-yellow-strong);
	font-size: 38px;
	line-height: 1 !important;
	transform: none !important;
	transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}

.single-our-feature .icon-box::before,
.single-our-feature .icon-box > *,
.single-our-feature .icon-box i {
	inset: auto !important;
	line-height: 1 !important;
	transform: none !important;
}

.single-our-feature:hover .icon-box,
.our-features .single-our-feature:hover .icon-box,
.single-service-page .single-our-feature:hover .icon-box {
	border-color: var(--ge-yellow-strong) !important;
	box-shadow: 0 13px 30px rgba(2, 22, 38, .22) !important;
	transform: translateY(-3px) !important;
}

.single-our-feature:hover h3,
.single-our-feature:hover p,
.our-features .single-our-feature:hover h3,
.our-features .single-our-feature:hover p,
.single-service-page .single-our-feature:hover h3,
.single-service-page .single-our-feature:hover p {
	transform: none !important;
}

.single-our-feature h3 {
	margin: 0 0 12px;
	color: var(--ge-navy-900);
	font-size: 22px;
}

.single-our-feature p {
	margin: 0;
	color: var(--ge-muted);
	font-size: 15px;
	line-height: 1.58;
}

.our-features .single-our-feature {
	min-height: 420px;
	padding: 58px 30px !important;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .13) !important;
	border-radius: 22px !important;
	background: linear-gradient(145deg, rgba(3, 31, 52, .88), rgba(8, 58, 91, .76)) !important;
	box-shadow: 0 22px 52px rgba(2, 22, 38, .26) !important;
}

.our-features .single-our-feature .icon-box {
	position: relative;
	flex: 0 0 86px;
	background: rgba(255, 255, 255, .96) !important;
	box-shadow: 0 12px 28px rgba(2, 22, 38, .22);
}

.our-features .single-our-feature .icon-box::before {
	position: static !important;
	display: block;
	font-size: 72px !important;
}

.our-features .single-our-feature .icon-box i {
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 38px !important;
	transform: translate(-50%, -50%) !important;
}

.our-features .single-our-feature h3 {
	color: var(--ge-yellow) !important;
}

.our-features .single-our-feature p {
	color: rgba(255, 255, 255, .78) !important;
}

.our-features .single-our-feature .overlay {
	overflow: hidden;
	border-bottom-color: var(--ge-yellow) !important;
	border-radius: inherit !important;
}

.our-features .single-our-feature .overlay::before {
	background: rgba(2, 22, 38, .91) !important;
}

/* Accordions */
.accrodion-grp {
	overflow: hidden;
	border: 1px solid var(--ge-line);
	border-radius: var(--ge-radius-lg);
	background: #fff;
	box-shadow: var(--ge-shadow);
}

.accrodion {
	padding: 0;
	border: 0;
	border-bottom: 1px solid var(--ge-line);
	background: #fff;
}

.accrodion:last-child {
	border-bottom: 0;
}

.accrodion .accrodion-title {
	position: relative;
	min-height: 66px;
	padding: 20px 58px 20px 24px;
	cursor: pointer;
	transition: background-color .2s ease;
}

.accrodion .accrodion-title:hover,
.accrodion.active .accrodion-title {
	background: var(--ge-surface-soft);
}

.accrodion .accrodion-title::after {
	position: absolute;
	top: 50%;
	right: 21px;
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 8px;
	background: var(--ge-yellow);
	color: var(--ge-navy-950);
	content: "+";
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-50%);
}

.accrodion.active .accrodion-title::after {
	content: "−";
	background: var(--ge-navy-800);
	color: #fff;
}

.accrodion .accrodion-title h4 {
	margin: 0;
	color: var(--ge-navy-900);
	font-size: 19px;
}

.accrodion .accrodion-content {
	padding: 0 24px 22px;
	color: var(--ge-muted);
}

.accrodion .accrodion-content p:last-child {
	margin-bottom: 0;
}

/* Forms and Popup Maker */
.home-contact-form,
.contact-section .wpcf7,
.pum-container {
	border: 1px solid rgba(156, 181, 199, .72);
	border-radius: var(--ge-radius-lg);
	background:
		radial-gradient(circle at 100% 0, rgba(255, 202, 10, .075), transparent 36%),
		linear-gradient(145deg, #fff 0%, #f8fafb 55%, #f1f6f8 100%);
	box-shadow: 0 24px 58px rgba(3, 31, 52, .13), inset 0 1px 0 rgba(255, 255, 255, .96);
}

.home-contact-form,
.contact-section .wpcf7 {
	padding: clamp(20px, 3vw, 32px);
}

.home-contact-form form,
.contact-section form,
.pum-container form {
	margin: 0;
}

.home-contact-form .wpcf7,
.home-contact-form form,
.contact-section .wpcf7 form,
.contact-section form,
.contact-section .wpcf7 .home-contact-form,
.pum-container .pum-content,
.pum-container .home-contact-form,
.pum-container .wpcf7,
.pum-container form {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.home-contact-form form p,
.contact-section form p,
.pum-container form p {
	margin: 0 0 11px;
}

.home-contact-form .wpcf7-form-control-wrap,
.contact-section .wpcf7-form-control-wrap,
.pum-container .wpcf7-form-control-wrap {
	display: block;
	margin-bottom: 14px;
}

.home-contact-form input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.home-contact-form select,
.home-contact-form textarea,
.contact-section input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.contact-section select,
.contact-section textarea,
.pum-container input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.pum-container select,
.pum-container textarea,
.comment-form input:not([type="submit"]),
.comment-form textarea {
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 12px 16px;
	border: 1px solid #b4c8d6;
	border-radius: 12px;
	background: linear-gradient(180deg, #fff 0%, #fbfcfd 100%);
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, .95), 0 7px 18px rgba(4, 37, 61, .045);
	color: var(--ge-ink);
	font-size: 15px;
	line-height: 1.45;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.home-contact-form textarea,
.contact-section textarea,
.pum-container textarea,
.comment-form textarea {
	min-height: 126px;
	resize: vertical;
}

.home-contact-form input:focus,
.home-contact-form select:focus,
.home-contact-form textarea:focus,
.contact-section input:focus,
.contact-section select:focus,
.contact-section textarea:focus,
.pum-container input:focus,
.pum-container select:focus,
.pum-container textarea:focus,
.comment-form input:focus,
.comment-form textarea:focus {
	border-color: var(--ge-navy-700);
	background: #fff;
	box-shadow: inset 3px 0 0 var(--ge-yellow), 0 0 0 4px rgba(13, 71, 111, .085), 0 10px 24px rgba(3, 31, 52, .08);
	outline: 0;
}

.home-contact-form input::placeholder,
.home-contact-form textarea::placeholder,
.contact-section input::placeholder,
.contact-section textarea::placeholder,
.pum-container input::placeholder,
.pum-container textarea::placeholder {
	color: #7b8790;
	opacity: 1;
}

.home-contact-form input[type="submit"],
.contact-section input[type="submit"],
.pum-container input[type="submit"],
.pum-container button[type="submit"] {
	width: 100%;
	min-height: 52px;
	margin-top: 2px;
	padding: 0 24px;
}

.wpcf7-not-valid-tip {
	display: block;
	margin: 4px 0 0;
	color: #b3261e;
	font-size: 13px;
	font-weight: 600;
	text-align: left;
}

.wpcf7-response-output {
	margin: 12px 0 0 !important;
	padding: 10px 13px !important;
	border-width: 1px !important;
	border-radius: 9px;
	font-size: 14px;
}

.pum-overlay {
	background: rgba(2, 22, 38, .67) !important;
	backdrop-filter: blur(7px);
}

.pum-container {
	width: min(760px, calc(100vw - 28px)) !important;
	max-width: 760px !important;
	max-height: calc(100vh - 28px) !important;
	padding: clamp(20px, 2.5vw, 28px) !important;
	overflow: auto !important;
	border-color: rgba(255, 255, 255, .72) !important;
}

.pum-container .pum-close {
	top: 10px !important;
	right: 10px !important;
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	padding: 0 !important;
	place-items: center;
	border: 1px solid #d5e0e8 !important;
	border-radius: 50% !important;
	background: rgba(247, 250, 252, .94) !important;
	box-shadow: 0 8px 19px rgba(3, 31, 52, .14) !important;
	color: var(--ge-navy-900) !important;
	font-size: 0 !important;
	line-height: 1 !important;
	transition: color .2s ease, transform .22s ease !important;
}

.pum-container .pum-close::before {
	content: "×";
	font-family: Arial, sans-serif;
	font-size: 25px;
	font-weight: 600;
	line-height: 1;
}

.pum-container .pum-close:hover {
	color: var(--ge-red) !important;
	transform: rotate(90deg);
}

/* Image CAPTCHA normalization */
.captcha-image.ge-captcha-ready {
	--ge-captcha-gap: 15px;
	--ge-captcha-size: 62px;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center !important;
}

.captcha-image .ge-captcha-instruction {
	display: block !important;
	width: 100% !important;
	margin: 0 0 9px !important;
	color: #465c70 !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	text-align: center !important;
}

.captcha-image .ge-captcha-target {
	color: var(--ge-navy-700) !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	border: 0 !important;
}

.captcha-image .ge-captcha-options {
	display: flex !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	align-items: center !important;
	justify-content: center !important;
	flex-flow: row nowrap !important;
	gap: var(--ge-captcha-gap) !important;
	margin: 0 auto !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.captcha-image .ge-captcha-options > label.ge-captcha-choice {
	display: inline-grid !important;
	flex: 0 0 var(--ge-captcha-size) !important;
	width: var(--ge-captcha-size) !important;
	min-width: var(--ge-captcha-size) !important;
	max-width: var(--ge-captcha-size) !important;
	height: var(--ge-captcha-size) !important;
	min-height: var(--ge-captcha-size) !important;
	max-height: var(--ge-captcha-size) !important;
	margin: 0 !important;
	padding: 0 !important;
	place-items: center !important;
	float: none !important;
	border: 1px solid #bdcbd6 !important;
	border-radius: 50% !important;
	background: linear-gradient(145deg, #f8fafc, #e8f0f5) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .96), 0 9px 20px rgba(3, 31, 52, .13) !important;
	color: #50647a !important;
	cursor: pointer;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.captcha-image .ge-captcha-options > label.ge-captcha-choice:hover {
	border-color: var(--ge-yellow-strong) !important;
	background: #fff9dd !important;
	box-shadow: 0 10px 24px rgba(242, 185, 0, .18) !important;
	color: var(--ge-navy-800) !important;
	transform: translateY(-2px);
}

.captcha-image .ge-captcha-options > label.ge-captcha-choice.is-ge-selected {
	border: 2px solid var(--ge-yellow-strong) !important;
	background: #fff4b8 !important;
	box-shadow: 0 0 0 3px rgba(255, 202, 10, .18), 0 10px 24px rgba(3, 31, 52, .12) !important;
	color: var(--ge-navy-900) !important;
}

.captcha-image .ge-captcha-options > label.ge-captcha-choice i,
.captcha-image .ge-captcha-options > label.ge-captcha-choice i::before,
.captcha-image .ge-captcha-options > label.ge-captcha-choice > span,
.captcha-image .ge-captcha-options > label.ge-captcha-choice [class*="fa-"],
.captcha-image .ge-captcha-options > label.ge-captcha-choice svg,
.captcha-image .ge-captcha-options > label.ge-captcha-choice img {
	display: block !important;
	max-width: 34px !important;
	max-height: 34px !important;
	margin: 0 !important;
	font-size: 33px !important;
	line-height: 1 !important;
	transform: none !important;
}

.captcha-image .ge-captcha-options > label.ge-captcha-choice input {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.captcha-image .ge-captcha-residual {
	display: none !important;
}

/* Sidebars, lists and blog */
.single-sidebar-box,
.sidebar_widget,
.side-bar.widget {
	margin-bottom: 24px;
	overflow: hidden;
	border: 1px solid var(--ge-line);
	border-radius: var(--ge-radius);
	background: #fff;
	box-shadow: var(--ge-shadow-sm);
}

.single-sidebar-box .title,
.sidebar_widget .sec-title,
.side-bar.widget .sec-title {
	margin: 0;
	padding: 15px 18px;
	border: 0;
	background: var(--ge-navy-900);
}

.single-sidebar-box .title h3,
.sidebar_widget .sec-title h3,
.side-bar.widget .sec-title h3 {
	margin: 0;
	color: #fff;
	font-size: 18px;
}

.single-sidebar-box ul,
.sidebar_widget ul,
.side-bar.widget ul {
	margin: 0;
	padding: 9px 16px 15px;
}

.single-sidebar-box ul li,
.sidebar_widget ul li,
.side-bar.widget ul li {
	padding: 9px 2px;
	border-bottom: 1px solid #edf1f4;
}

.single-sidebar-box ul li:last-child,
.sidebar_widget ul li:last-child,
.side-bar.widget ul li:last-child {
	border-bottom: 0;
}

.service-link-widget ul li a {
	position: relative;
	padding: 12px 15px 12px 19px;
	border: 0;
	border-radius: 8px;
	background: var(--ge-surface-soft);
	color: var(--ge-ink);
}

.service-link-widget ul li a::before {
	position: absolute;
	top: 13px;
	bottom: 13px;
	left: 0;
	width: 3px;
	border-radius: 2px;
	background: var(--ge-red);
	content: "";
}

.service-link-widget ul li.active a,
.service-link-widget ul li:hover a {
	background: var(--ge-navy-900);
	color: var(--ge-yellow);
}

.service-link-widget ul li.active a::before,
.service-link-widget ul li:hover a::before {
	background: var(--ge-yellow);
}

.ge-search-widget {
	padding: 14px;
}

.ge-search-widget form {
	position: relative;
}

.ge-search-widget input {
	width: 100%;
	height: 46px;
	padding: 0 48px 0 13px;
	border: 1px solid #cbd8e1;
	border-radius: 9px;
}

.ge-search-widget button {
	position: absolute;
	top: 0;
	right: 0;
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 0;
	border-radius: 0 9px 9px 0;
	background: var(--ge-yellow);
	color: var(--ge-navy-950);
}

.single-blog-post,
.blog-box {
	margin-bottom: 30px;
	overflow: hidden;
	border: 1px solid var(--ge-line);
	border-radius: var(--ge-radius-lg);
	background: #fff;
	box-shadow: var(--ge-shadow-sm);
}

.single-blog-post .content-box,
.blog-box .desc,
.blog-box .blog-title,
.blog-box .meta {
	padding-right: 24px;
	padding-left: 24px;
}

.blog-box .blog-title {
	padding-top: 22px;
}

.blog-box .blog-title h3 {
	margin: 0 0 12px;
}

.blog-box .meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	padding-bottom: 16px;
	color: var(--ge-muted);
	font-size: 13px;
}

.blog-box .desc {
	padding-top: 20px;
	padding-bottom: 24px;
}

.readmore {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ge-navy-800);
	font-weight: 700;
}

/* Testimonials */
.testimonials-section .single-testimonials {
	height: 100%;
}

.testimonials-section .slide-item {
	height: 100%;
	padding: 4px 10px 20px;
	text-align: center;
}

.testimonials-section .slide-item .image-box {
	display: grid !important;
	width: 82px !important;
	min-width: 82px !important;
	max-width: 82px !important;
	height: 82px !important;
	min-height: 82px !important;
	max-height: 82px !important;
	margin: 0 auto 16px !important;
	overflow: hidden !important;
	place-items: center;
	border: 1px solid #d3e0e8;
	border-radius: 50% !important;
	background: #fff;
	box-shadow: 0 11px 28px rgba(3, 31, 52, .12);
}

.testimonials-section .slide-item .image-box img {
	display: block !important;
	width: 100% !important;
	max-width: 82px !important;
	height: 100% !important;
	max-height: 82px !important;
	margin: 0 !important;
	padding: 8px;
	object-fit: contain !important;
	object-position: center !important;
}

.testimonials-section .slide-item .slide-text {
	position: relative;
	min-height: 210px;
	padding: 24px 25px !important;
	border: 1px solid var(--ge-line);
	border-radius: 20px !important;
	background: linear-gradient(145deg, #fff, #f4f8fa) !important;
	box-shadow: var(--ge-shadow-sm);
}

.testimonials-section .slide-item .slide-text::after {
	position: absolute;
	top: 100%;
	left: 34px;
	width: 0;
	height: 0;
	border-top: 14px solid #f4f8fa;
	border-right: 14px solid transparent;
	content: "";
}

.testimonials-section .slide-item .slide-text p {
	margin: 0;
	color: var(--ge-ink);
	font-size: 15px;
	line-height: 1.7;
}

.testimonials-section .slide-item .info-box {
	margin-top: 20px;
	text-align: left;
}

.testimonials-section .slide-item .info-box h3 {
	margin: 0;
	color: var(--ge-navy-900);
	font-size: 16px;
	line-height: 1.35;
}

.single-testimonials .review-text {
	min-height: 250px;
	padding: 28px 30px !important;
	border: 1px solid var(--ge-line);
	border-radius: 22px !important;
	background: linear-gradient(145deg, #fff, #f5f8fa) !important;
	box-shadow: var(--ge-shadow-sm);
}

.single-testimonials .review-text p {
	color: var(--ge-ink);
	font-size: 16px;
	line-height: 1.72;
}

.single-testimonials .info-box {
	display: flex !important;
	align-items: center;
	gap: 14px;
	margin-top: 18px;
}

.single-testimonials .info-box .img-box {
	display: grid !important;
	flex: 0 0 76px;
	width: 76px !important;
	height: 76px !important;
	overflow: hidden;
	place-items: center;
	border: 1px solid #d6e1e8;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 10px 24px rgba(3, 31, 52, .12);
}

.single-testimonials .info-box .img-box img,
.testimonials-section .owl-item .info-box img {
	display: block !important;
	width: 100% !important;
	max-width: 76px !important;
	height: 100% !important;
	max-height: 76px !important;
	padding: 7px;
	object-fit: contain !important;
}

.single-testimonials .info-box .content-box {
	display: block !important;
	min-width: 0;
}

.single-testimonials .info-box h3 {
	margin: 0;
	color: var(--ge-navy-900);
	font-size: 17px;
	line-height: 1.35;
}

table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}

.ge-table-scroll {
	width: 100%;
	max-height: none !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	border: 1px solid var(--ge-line);
	border-radius: 12px;
	background: #fff;
	box-shadow: var(--ge-shadow-sm);
	-webkit-overflow-scrolling: touch;
}

.ge-table-scroll table {
	display: table !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	overflow: visible !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff;
}

.ge-table-scroll th,
.ge-table-scroll td {
	padding: 12px 14px;
	border-right: 1px solid var(--ge-line);
	border-bottom: 1px solid var(--ge-line);
	background: #fff !important;
	color: var(--ge-ink) !important;
	vertical-align: middle;
}

.ge-table-scroll th {
	background: var(--ge-navy-900) !important;
	color: #fff !important;
	font-weight: 700;
}

.ge-pricing-table-wrap {
	max-height: none !important;
	overflow: auto;
	border: 1px solid rgba(154, 180, 198, .88);
	border-top: 3px solid var(--ge-yellow-strong);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 22px 54px rgba(3, 31, 52, .12);
}

.ge-pricing-table,
.ge-pricing-table thead,
.ge-pricing-table tbody,
.ge-pricing-table tfoot {
	max-height: none !important;
	overflow: visible !important;
}

.ge-pricing-table {
	display: table !important;
	width: 100% !important;
	height: auto !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
}

.ge-pricing-table thead {
	display: table-header-group !important;
}

.ge-pricing-table tbody {
	display: table-row-group !important;
}

.ge-pricing-table tfoot {
	display: table-footer-group !important;
}

.ge-pricing-table th,
.ge-pricing-table thead td,
.ge-pricing-table tr:first-child td {
	padding: 17px 18px;
	border-color: rgba(255, 255, 255, .16) !important;
	background: linear-gradient(135deg, #052640, #0a4a72) !important;
	color: #fff !important;
	font-family: "Roboto Condensed", "Roboto", sans-serif;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1.35;
	text-align: center;
}

.ge-pricing-table tr:nth-child(even) td {
	background: #f3f7fa !important;
}

.ge-pricing-table tbody tr {
	transition: background-color .2s ease, box-shadow .2s ease;
}

.ge-pricing-table tbody tr:hover td {
	background: #eef6fa !important;
}

.ge-pricing-table td {
	padding: 16px 18px;
	border-color: #d7e2e9 !important;
	line-height: 1.5;
}

.ge-pricing-table td:first-child {
	background: #fffaf0 !important;
	color: var(--ge-navy-900) !important;
	font-weight: 650;
}

.ge-pricing-table tbody a {
	color: var(--ge-navy-700) !important;
	text-decoration-color: var(--ge-yellow-strong);
	text-underline-offset: 3px;
}

.ge-pricing-table th a,
.ge-pricing-table thead a,
.ge-pricing-table tr:first-child td a {
	color: var(--ge-yellow) !important;
	text-decoration: none !important;
}

/* Footer */
.ge-footer {
	position: relative;
	padding: 54px 0 42px;
	overflow: hidden;
	background:
		linear-gradient(105deg, rgba(2, 22, 38, .965), rgba(4, 42, 69, .93)),
		url("../img/resources/footer-bg.webp") center bottom / cover no-repeat;
}

.ge-footer::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--ge-yellow), transparent);
	content: "";
	opacity: .55;
}

.ge-footer .container {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1.15fr 1fr 1fr 1fr;
	align-items: start;
	align-content: start;
	gap: clamp(28px, 3vw, 52px);
}

.ge-footer .container > .ge-footer-widget,
.ge-footer .container > .ge-footer-widget > .footer-widget {
	position: static !important;
	display: block !important;
	float: none !important;
	clear: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	align-self: start !important;
	background: transparent !important;
	box-shadow: none !important;
	transform: none !important;
}

.ge-footer .footer-widget {
	min-width: 0;
	margin: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
}

.ge-footer .footer-widget .title {
	margin: 0 0 18px;
	padding: 0 0 11px;
	background: none;
	border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.ge-footer .footer-widget .title h2 {
	color: var(--ge-yellow);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.ge-footer .footer-widget,
.ge-footer .footer-widget p,
.ge-footer .footer-widget li,
.ge-footer .footer-widget a {
	color: rgba(255, 255, 255, .78);
	font-size: 15px;
	line-height: 1.66;
}

.ge-footer .footer-widget a:hover {
	color: var(--ge-yellow);
}

.ge-footer .footer-widget img {
	max-width: min(100%, 260px);
	height: auto;
	border-radius: 7px;
}

.ge-footer .footer-widget ul,
.ge-footer .footer-widget ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ge-footer .footer-widget li {
	margin: 0;
	padding: 5px 0;
	border: 0;
}

.ge-footer .footer-widget .textwidget > *:last-child,
.ge-footer .footer-widget > *:last-child {
	margin-bottom: 0;
}

.ge-footer .footer-widget .title + * {
	margin-top: 0;
}

.ge-footer .about-widget img {
	display: block;
	margin: 0 0 22px !important;
}

.ge-footer .about-widget p {
	margin: 0 0 22px !important;
}

.ge-footer .about-widget .thm-btn {
	margin: 0 !important;
}

.ge-footer .link-widget .links,
.ge-footer .widget_text .links,
.ge-footer .recent-news ul,
.ge-footer .widget_bunch_recent_post_with_image ul,
.ge-footer .contact-widget ul {
	margin-top: 0 !important;
}

.ge-footer .contact-widget li {
	display: grid !important;
	grid-template-columns: 38px minmax(0, 1fr);
	align-items: center;
	gap: 13px;
	margin: 0 !important;
	padding: 13px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, .12) !important;
}

.ge-footer .contact-widget li:last-child {
	border-bottom: 0 !important;
}

.ge-footer .contact-widget .dtc {
	display: block !important;
	width: auto !important;
	vertical-align: initial !important;
}

.ge-footer .contact-widget .icon-box {
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	padding: 0 !important;
	place-items: center;
	border: 1px solid rgba(255, 202, 10, .34);
	border-radius: 12px;
	background: rgba(255, 202, 10, .065);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}

.ge-footer .contact-widget .icon-box i {
	color: var(--ge-yellow) !important;
	font-size: 22px !important;
	line-height: 1 !important;
}

.ge-footer .contact-widget .content {
	min-width: 0;
	padding: 0 !important;
}

.ge-footer .contact-widget .content h3 {
	margin: 0 !important;
	color: rgba(255, 255, 255, .86) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	overflow-wrap: anywhere;
}

@media (min-width: 1200px) {
	.ge-footer .container > .widget_bunch_conatct_info {
		grid-row: 1;
		align-self: start;
	}
}

.ge-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, .12);
	background: var(--ge-navy-950);
}

.ge-footer-bottom__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 70px;
	align-items: center;
	gap: 24px;
	padding-top: 11px;
	padding-bottom: 11px;
}

.ge-footer-bottom .left-text,
.ge-footer-bottom .right-text {
	float: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

.ge-footer-bottom p {
	margin: 0;
	color: rgba(255, 255, 255, .69);
	font-size: 13px;
	line-height: 1.5;
}

.ge-footer-socials {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0;
	list-style: none;
}

.ge-footer-socials li {
	margin: 0 !important;
	padding: 0 !important;
}

.ge-footer-socials a {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 50%;
	background: rgba(255, 255, 255, .085);
	color: #fff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .13), 0 8px 20px rgba(0, 0, 0, .16);
	font-size: 19px;
	line-height: 1;
}

.ge-footer-socials a:hover {
	border-color: var(--ge-yellow);
	background: rgba(255, 202, 10, .13);
	color: var(--ge-yellow);
	box-shadow: 0 0 22px rgba(255, 202, 10, .19);
}

/* Scroll to top */
.scroll-to-top:not(#ge-scroll-top) {
	display: none !important;
}

.scroll-to-top {
	position: fixed;
	z-index: 1100;
	right: 24px;
	bottom: 24px;
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border: 1px solid rgba(255, 202, 10, .68);
	border-radius: 50%;
	background: linear-gradient(145deg, rgba(8, 54, 87, .78), rgba(3, 27, 46, .9));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .19), 0 11px 28px rgba(2, 20, 35, .25);
	color: var(--ge-yellow);
	opacity: 0;
	backdrop-filter: blur(12px) saturate(145%);
	transform: translateY(12px);
	transition: opacity .22s ease, transform .22s ease, box-shadow .22s ease, background .22s ease;
	pointer-events: none;
}

.scroll-to-top.is-visible {
	opacity: .86;
	transform: translateY(0);
	pointer-events: auto;
}

.scroll-to-top:hover {
	background: var(--ge-navy-800);
	box-shadow: 0 0 0 5px rgba(255, 202, 10, .13), 0 15px 34px rgba(2, 20, 35, .34);
	color: #fff;
	opacity: 1;
}

.scroll-to-top::before {
	position: absolute;
	right: calc(100% + 10px);
	padding: 7px 10px;
	border-radius: 7px;
	background: var(--ge-navy-950);
	box-shadow: var(--ge-shadow-sm);
	color: #fff;
	content: attr(data-ge-tooltip);
	font-size: 12px;
	line-height: 1;
	opacity: 0;
	white-space: nowrap;
	transform: translateX(5px);
	transition: opacity .18s ease, transform .18s ease;
	pointer-events: none;
}

.scroll-to-top:hover::before,
.scroll-to-top:focus-visible::before {
	opacity: 1;
	transform: translateX(0);
}

/* 404 */
.ge-404 {
	display: grid;
	min-height: clamp(520px, 68vh, 760px);
	padding: clamp(58px, 8vw, 110px) 0;
	place-items: center;
	background:
		radial-gradient(circle at 15% 22%, rgba(255, 202, 10, .16), transparent 28%),
		radial-gradient(circle at 90% 14%, rgba(11, 80, 124, .11), transparent 30%),
		linear-gradient(150deg, #fff, #f2f7fa);
}

.ge-404__card {
	max-width: 760px;
	margin: 0 auto;
	padding: clamp(36px, 5vw, 62px);
	border: 1px solid rgba(182, 201, 215, .78);
	border-radius: 28px;
	background: rgba(255, 255, 255, .84);
	box-shadow: var(--ge-shadow-lg);
	text-align: center;
	backdrop-filter: blur(14px);
}

.ge-404__code {
	color: var(--ge-navy-900);
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(94px, 15vw, 168px);
	font-weight: 700;
	letter-spacing: -.08em;
	line-height: .78;
	text-shadow: 0 13px 30px rgba(3, 31, 52, .13);
}

.ge-404__eyebrow {
	margin: 24px 0 10px;
	color: var(--ge-yellow-strong);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ge-404 h1 {
	margin: 0 0 16px;
	font-size: clamp(30px, 4vw, 43px);
}

.ge-404__card > p:not(.ge-404__eyebrow) {
	max-width: 590px;
	margin: 0 auto 28px;
	color: var(--ge-muted);
}

.ge-404__button {
	padding: 0 26px;
}

/* Responsive navigation and layout */
@media (max-width: 1199px) {
	.container {
		width: min(960px, calc(100% - 34px));
	}

	.ge-header__contacts {
		gap: 12px;
	}

	.ge-header-contact:first-child {
		display: none;
	}

	.ge-navigation__inner {
		min-height: 64px;
		align-items: center;
	}

	.ge-navigation .mainmenu-holder {
		position: relative;
		display: block;
		flex: 1 1 auto;
	}

	.ge-navigation .nav-footer {
		display: block !important;
	}

	.ge-navigation .nav-footer > ul {
		margin: 0;
	}

	.ge-navigation .nav-footer > ul > li {
		float: none;
	}

	.ge-navigation .nav-footer .menu-expander {
		display: inline-flex;
		min-width: 132px;
		height: 46px;
		align-items: center;
		justify-content: center;
		gap: 12px;
		padding: 0 16px;
		border: 1px solid rgba(255, 255, 255, .16);
		border-radius: 10px;
		background: rgba(255, 255, 255, .075);
		color: #fff;
		font-size: 15px;
		font-weight: 600;
		line-height: 1;
		text-transform: uppercase;
	}

	.ge-menu-icon {
		display: grid;
		gap: 4px;
	}

	.ge-menu-icon i {
		display: block;
		width: 19px;
		height: 2px;
		border-radius: 2px;
		background: currentColor;
		transition: transform .2s ease, opacity .2s ease;
	}

	.menu-expander[aria-expanded="true"] .ge-menu-icon i:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.menu-expander[aria-expanded="true"] .ge-menu-icon i:nth-child(2) {
		opacity: 0;
	}

	.menu-expander[aria-expanded="true"] .ge-menu-icon i:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.ge-navigation .nav-header {
		position: absolute;
		top: calc(100% + 9px);
		left: 0;
		width: min(390px, calc(100vw - 34px));
		max-height: 0;
		overflow: hidden;
		border: 0 solid rgba(255, 255, 255, .1);
		border-radius: 15px;
		background: rgba(3, 31, 52, .985);
		box-shadow: var(--ge-shadow-lg);
		opacity: 0;
		transition: max-height .34s ease, opacity .2s ease, border-width .2s ease;
	}

	.ge-navigation .nav-header > ul,
	.ge-navigation .nav-header > ul > li,
	.ge-navigation .nav-header > ul > li > a {
		background-color: transparent;
		background-image: none;
	}

	.ge-navigation .nav-header.opened {
		max-height: min(74vh, 720px);
		overflow-y: auto;
		border-width: 1px;
		opacity: 1;
	}

	.ge-navigation .nav-header > ul {
		display: block;
		height: auto;
		padding: 12px;
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li {
		display: block;
		border-bottom: 1px solid rgba(255, 255, 255, .09);
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li:last-child {
		border-bottom: 0;
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li > a,
	.ge-navigation .mainmenu-holder .nav-header > ul > li:first-child > a {
		min-height: 54px;
		margin: 3px 0;
		padding: 0 58px 0 16px;
		border: 1px solid transparent !important;
		border-radius: 9px;
		font-size: 16px;
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li:hover > a,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.active > a,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-item > a,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-ancestor > a {
		border-color: rgba(255, 202, 10, .28) !important;
		background: linear-gradient(100deg, rgba(255, 202, 10, .18), rgba(255, 202, 10, .07)) !important;
		box-shadow: inset 3px 0 0 var(--ge-yellow);
		color: #ffe174;
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li > a::before {
		top: 9px;
		right: auto;
		bottom: 9px;
		left: 0;
		width: 3px;
		height: auto;
		transform: scaleY(.25);
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li:hover > a::before,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.active > a::before,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-item > a::before,
	.ge-navigation .mainmenu-holder .nav-header > ul > li.current-menu-ancestor > a::before {
		transform: scaleY(1);
	}

	.ge-navigation .mainmenu-holder .nav-header .navigation .dropdown-expander {
		position: absolute;
		top: 8px;
		right: 8px;
		display: grid;
		width: 38px;
		height: 38px;
		place-items: center;
		border: 1px solid rgba(255, 255, 255, .16);
		border-radius: 9px;
		background: rgba(255, 255, 255, .07);
		color: #fff;
	}

	.ge-navigation .mainmenu-holder .nav-header .navigation .dropdown-expander i::before {
		content: "\f107";
	}

	.ge-navigation .mainmenu-holder .nav-header .navigation .dropdown-expander[aria-expanded="true"] i::before {
		content: "\f106";
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li > ul,
	.ge-navigation .mainmenu-holder .nav-header > ul > li > ul > li > ul {
		position: static;
		display: none;
		width: auto;
		padding: 4px 8px 10px 22px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.ge-navigation .mainmenu-holder .nav-header > ul > li > ul.opened,
	.ge-navigation .mainmenu-holder .nav-header > ul > li > ul > li > ul.opened {
		display: block;
	}

	.ge-footer .container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {
	.container {
		width: calc(100% - 30px);
	}

	.ge-topbar__statement small,
	.ge-topbar__contacts > a span {
		display: none;
	}

	.ge-header__inner {
		min-height: 62px;
		gap: 18px;
	}

	.ge-brand img {
		max-width: 225px;
		height: 55px;
	}

	.ge-header-contact {
		display: none;
	}

	.ge-header__actions {
		margin-left: auto;
	}

	.inner-banner {
		min-height: 190px;
	}

	.our-services .single-our-service h3 {
		font-size: 18px;
	}

	.ge-footer .footer-widget {
		min-height: 0 !important;
	}
}

@media (max-width: 767px) {
	body {
		font-size: 16px;
		line-height: 1.58;
	}

	.container {
		width: calc(100% - 24px);
	}

	.ge-topbar {
		min-height: 42px;
	}

	.ge-topbar__inner {
		min-height: 42px;
	}

	.ge-topbar__statement {
		max-width: calc(100% - 70px);
	}

	.ge-topbar__statement strong {
		overflow: hidden;
		font-size: 11px;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.ge-topbar__contacts {
		gap: 7px;
	}

	.ge-topbar__contacts > a {
		display: none;
	}

	.ge-topbar__socials {
		padding-left: 0;
		border-left: 0;
	}

	header.ge-header {
		padding: 10px 0;
	}

	.ge-header__inner {
		min-height: 54px;
	}

	.ge-brand {
		padding: 2px;
	}

	.ge-brand img {
		max-width: min(205px, 43vw);
		height: 48px;
	}

	.ge-icon-action {
		display: none;
	}

	.ge-request-button {
		min-height: 46px;
		padding: 0 14px;
		font-size: 14px;
		line-height: 44px;
	}

	.ge-navigation,
	.ge-navigation__inner {
		min-height: 58px;
	}

	.ge-navigation .nav-footer .menu-expander {
		min-width: 116px;
		height: 42px;
		padding: 0 13px;
		font-size: 14px;
	}

	.ge-search-toggle {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
	}

	.ge-navigation .nav-header {
		top: calc(100% + 7px);
		width: calc(100vw - 24px);
	}

	.ge-search-panel {
		padding: 85px 12px 20px;
	}

	.ge-search-panel__card {
		padding: 23px 17px 17px;
		border-radius: 16px;
	}

	.ge-search-panel__card > strong {
		margin-bottom: 14px;
		font-size: 20px;
	}

	.ge-search-panel__card form {
		grid-template-columns: 1fr;
	}

	.ge-search-panel__card form button {
		height: 48px;
	}

	.inner-banner {
		min-height: 154px;
		padding: 32px 0;
	}

	.inner-banner h2 {
		font-size: clamp(25px, 7vw, 34px);
	}

	.bread-cumb .container {
		padding-top: 8px;
		padding-bottom: 10px;
		text-align: center;
	}

	.bread-cumb ul {
		min-height: 50px;
		align-items: center;
		align-content: center;
		justify-content: center;
	}

	.bread-cumb ul li,
	.bread-cumb ul li a,
	.bread-cumb ul li span {
		font-size: 12px;
		line-height: 1.4;
	}

	.bread-cumb ul li a::after {
		margin-right: 7px;
		margin-left: 7px;
	}

	.section-padding {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.news-content.section-padding {
		padding-top: 42px;
	}

	.section-title {
		margin-bottom: 27px;
	}

	.section-title h2 {
		gap: 10px;
	}

	.section-title h2 span,
	.section-title.text-center h2 span {
		font-size: 27px;
	}

	.our-services .row > [class*="col-"] {
		width: 100%;
		margin-bottom: 22px;
	}

	.our-services .single-our-service > a {
		padding: 18px 17px 7px;
	}

	.our-services .single-our-service > p {
		padding: 4px 17px 20px;
	}

	.accrodion .accrodion-title {
		min-height: 58px;
		padding: 16px 52px 16px 17px;
	}

	.accrodion .accrodion-title h4 {
		font-size: 17px;
	}

	.accrodion .accrodion-title::after {
		right: 15px;
	}

	.accrodion .accrodion-content {
		padding: 0 17px 17px;
	}

	.home-contact-form,
	.contact-section .wpcf7,
	.pum-container {
		padding: 17px !important;
		border-radius: 17px;
	}

	.home-contact-form form p,
	.contact-section form p,
	.pum-container form p {
		margin-bottom: 9px;
	}

	.home-contact-form textarea,
	.contact-section textarea,
	.pum-container textarea {
		min-height: 112px;
	}

	.captcha-image .ge-captcha-instruction {
		font-size: 15px !important;
	}

	.captcha-image.ge-captcha-ready {
		--ge-captcha-gap: 11px;
		--ge-captcha-size: 56px;
	}

	.captcha-image .ge-captcha-options > label.ge-captcha-choice {
		flex-basis: var(--ge-captcha-size) !important;
		width: var(--ge-captcha-size) !important;
		min-width: var(--ge-captcha-size) !important;
		max-width: var(--ge-captcha-size) !important;
		height: var(--ge-captcha-size) !important;
		min-height: var(--ge-captcha-size) !important;
		max-height: var(--ge-captcha-size) !important;
	}

	.ge-footer {
		padding: 44px 0 24px;
	}

	.ge-footer .container {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.ge-footer-bottom__inner {
		min-height: 82px;
		grid-template-columns: 1fr;
		justify-content: center;
		gap: 9px;
		text-align: center;
	}

	.scroll-to-top {
		right: 15px;
		bottom: 15px;
		width: 46px;
		height: 46px;
	}

	.scroll-to-top::before {
		display: none;
	}

	.ge-404 {
		min-height: 520px;
		padding: 45px 0;
	}

	.ge-404__card {
		padding: 36px 20px;
		border-radius: 22px;
	}
}

@media (max-width: 420px) {
	.ge-topbar__socials a {
		width: 28px;
		height: 28px;
	}

	.ge-brand img {
		max-width: 160px;
	}

	.ge-request-button {
		padding: 0 11px;
		font-size: 13px;
	}

	.captcha-image.ge-captcha-ready {
		--ge-captcha-gap: 9px;
		--ge-captcha-size: 50px;
	}

	.captcha-image .ge-captcha-options > label.ge-captcha-choice {
		flex-basis: var(--ge-captcha-size) !important;
		width: var(--ge-captcha-size) !important;
		min-width: var(--ge-captcha-size) !important;
		max-width: var(--ge-captcha-size) !important;
		height: var(--ge-captcha-size) !important;
		min-height: var(--ge-captcha-size) !important;
		max-height: var(--ge-captcha-size) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
