﻿/* Add this at the very top of the file */
@import url('../../Fonts/Gx/font-inter.css');
@import url('bootstrap/bootstrap.min.css');
/* Gxstyle.css - Global styles for TM GX */

:root {
	--background: #ffffff;
	--foreground: #333333;
}

* {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

::placeholder {
	color: #333333;
	opacity: .35;
	/* Firefox */
}

::-ms-input-placeholder {
	/* Edge 12-18 */
	color: #333333;
}

html {
	font-size: 62.5%;
}

body {
	background-color: #fff;
	max-width: 100vw;
	font-family: "Inter";
	line-height: 1.5;
	overflow-x: hidden;
	color: #333;
	font-size: 1.8rem;
}

a {
	color: inherit;
	text-decoration: none;
}

img {
	max-width: 100%;
}

/* Heading  */
h1,
.h1 {
	font-size: 3.4rem;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 2rem;
}

h2,
.h2 {
	font-size: 2.8rem;
	line-height: 1.3;
	font-weight: 700;
	margin-bottom: 2rem;
}

h3,
.h3 {
	font-size: 2.4rem;
	font-weight: 500
}

h4 {
	font-size: 2rem;
	line-height: 1.4;
	font-weight: 600;
}

/* Marging */
.mb-20 {
	margin-bottom: 2rem !important;
}

.mt-20 {
	margin-top: 2rem;
}

.mb-40 {
	margin-bottom: 4rem;
}

.mt-40 {
	margin-top: 4rem;
}

.ms-20 {
	margin-left: 2rem;
}

.mx-20 {
	margin-right: 2rem;
	margin-left: 2rem;
}

/* Padding   */
.p-20 {
	padding: 2rem;
}

.pb-20 {
	padding-bottom: 2rem;
}

.ps-20 {
	padding-left: 2rem;
}

.pt-20 {
	padding-top: 2rem;
}

.px-20 {
	padding-left: 2rem;
	padding-right: 2rem;
}

.py-20 {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

/* Background color and images*/

.bg-blue {
	background-color: #0066CC;
}

.bg-dark-gray {
	background-color: #333333;
}

.black-bg {
	background: url("../../Images/Gx/bg-black.png") 0% 0% repeat #000;
	padding: 6rem 0;
}

.blue-bg {
	background: url("../../Images/Gx/bg-blue.png") 0% 0% repeat #06C;
	padding: 6rem 0;
}

/* Typrography  */
.text-blue {
	color: #0066CC;
}

.text-green {
	color: #5EC72A;
}

.text-small {
	font-size: 1.4rem;
}

.text-large {
	font-size: 1.8rem;
}

.text-lable,
.text-label {
	font-size: 1.4rem;
	text-transform: uppercase;
	font-weight: 400;
}

/* link */
.link-arrow {
	color: #333;
	text-decoration: none;
}

	.link-arrow:after {
		content: url("../../Images/Gx/btnArrowSmall.svg");
		margin-left: 1rem;
		vertical-align: middle;
	}

	.link-arrow:hover:after,
	.link-arrow:active:after {
		content: url("../../Images/Gx/btnArrowBlue.svg");
		margin-left: 1.5rem;
	}

.link-arrow-green {
	color: #333;
	text-decoration: none;
}

	.link-arrow-green:after {
		content: url("../../Images/Gx/cardArrowGreen.svg");
		margin-left: 2rem;
		vertical-align: middle;
	}

	.link-arrow-green:hover:after,
	.link-arrow-green:active:after {
		content: url("../../Images/Gx/cardArrowBlueBig.svg");
	}

.bg-blue-arrow-link {
	background-color: #0066CC;
	color: #fff;
	width: 100%;
	padding: 2rem;
	display: block;
	margin-bottom: 2rem;
	cursor: pointer;
	position: relative;
	height: 9rem;
	line-height: 5rem;
}

	.bg-blue-arrow-link::after {
		content: url("../../Images/Gx/btnArrowBig.svg");
		position: absolute;
		right: 2rem;
	}

	.link-section:hover,
	.link-section:active,
	.bg-blue-arrow-link:hover,
	.bg-blue-arrow-link:active {
		color: #fff;
	}

/* Button Style */
.btn {
	padding: 1.4rem 2.4rem;
	border-radius: 4rem;
	font-size: 1.4rem;
	letter-spacing: .1rem;
	line-height: 2.1rem;
	text-transform: uppercase;
	padding: 1.4rem 2.4rem;
	width: 100%;
	margin-bottom: 2rem;
}

	.btn:last-child {
		margin-bottom: 0;
	}

.btn-primary {
	color: #1E1E1E;
	background-color: #5EC72A;
	border: .1rem solid #5EC72A;
}

.btn-secondary {
	color: #1E1E1E;
	background-color: #fff;
	border: .1rem solid #5EC72A;
}

	.btn-primary .svg,
	.btn-secondary .svg {
		color: #333333;
	}

	.btn-primary:hover,
	.btn-primary:active,
	.btn-secondary:hover,
	.btn-secondary:active {
		background-color: #0066CC;
		border-color: #fff;
		color: #fff;
	}

		.btn-primary:hover .svg,
		.btn-secondary:hover .svg {
			color: #fff;
		}

	.btn-primary:after,
	.btn-secondary:after {
		content: url("../../Images/Gx/btnArrow.svg");
		width: 1.8rem;
		height: 1.8rem;
		float: right;
		margin: .25rem 0 0 1rem;
	}

	.btn-primary:hover:after,
	.btn-primary:active:after,
	.btn-secondary:hover:after {
		content: url("../../Images/Gx/btnArrowHover.svg");
	}

/* Header */
.header {
	position: fixed;
	top: 0;
	z-index: 11;
	left: 0;
	width: 100%;
	background: #fff;
	transition: background-color .3s ease-in-out;
	padding: 1rem;
}

.container {
	padding: 0 2rem;
}

.logo-mobile {
	width: 8rem
}

/* Navigation Style */
.nav-item .nav-link {
	letter-spacing: .1rem;
	text-transform: uppercase;
}

	.nav-item .nav-link:hover,
	.nav-item .nav-link:active,
	.nav-item .nav-link.active {
		color: #0066CC !important;
	}

.nav-primary-link:hover {
	text-decoration: underline;
}

.nav-item.nav-contact .nav-link {
	background-color: #0066CC;
	color: #fff;
	border-radius: 4rem;
	text-align: center;
	padding-left: 2rem !important;
	padding-right: 2rem !important;
}

	.nav-item.nav-contact .nav-link:hover,
	.nav-item.nav-contact .nav-link:active,
	.nav-item.nav-contact .nav-link.active {
		background-color: #5EC72A !important;
		color: #333333 !important;
		text-decoration: none;
	}

.nav-search {
	border: .15rem solid #0066CC;
	border-radius: 50%;
	margin-left: 2rem;
	max-width: 5.2rem;
	display: none;
}

	.nav-search .search-icon {
		background: url("../../Images/Gx/Search.svg") center center no-repeat;
		width: 2.2rem;
		height: 2.3rem;
		margin: 1.15rem 0;
		padding: 0 !important;
	}

/* second level Navigation Style */
.nav-overlay {
	background: rgba(0, 0, 0, .5);
	z-index: 10;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
}

.navbar-toggler {
	border: 0;
}

	.navbar-toggler:focus {
		outline: 0;
		box-shadow: 0 0 0 0;
	}

.navbar-toggler-icon {
	width: 3rem;
	height: 2.5rem;
}

.nav-icon {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	margin: 0 .8rem;
	border: none;
	background-color: transparent;
	background-repeat: no-repeat
}

.nav-icon-hamburger--cross {
	border: 0;
	width: 4rem;
	height: 4rem;
	background: url(../../Images/Gx/cross.svg) center center no-repeat;
}

	.nav-icon-hamburger--cross .navbar-toggler-icon {
		opacity: 0;
	}

.mobile-navigation {
	position: absolute;
	top: 10rem;
	left: 125%;
	width: 100%;
	height: 100vh;
	transition: .2s;
	z-index: -1;
	background: #fff
}

.mobile-navigation--open {
	left: 0
}

.nav-mega-menu {
	position: absolute;
	width: 100%;
	transition: .5s;
	z-index: 1;
	left: 0;
	top: 0;
	left: 125%;
	padding: 0
}

.nav-mega-menu--open {
	left: 0
}

.nav-mega-content {
	position: relative;
	height: calc(100vh - 2rem);
	margin: auto
}

.left-panel {
	background: #007BFF;
	color: white;
	padding: 1.5rem 2rem;
}

.nav-page-name {
	margin-bottom: 1rem;
}

.nav-back {
	position: relative;
	display: inline-block;
	color: #fff;
	padding-left: 3.4rem;
	margin-bottom: 1rem;
	cursor: pointer;
}

	.nav-back:before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 2.4rem;
		height: 2.4rem;
		background: url(../../Images/Gx/back.svg) 0 0 no-repeat transparent;
	}

.right-panel {
	background: #fff;
	padding: 1.5rem 2rem;
}

.nav-menu-close {
	position: absolute;
	right: 3rem;
	top: 4rem;
	display: none;
	width: 4.6rem;
	height: 4.6rem;
	padding: 1.4rem;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	background: url("../../Images/Gx/cross.svg") center center no-repeat;
	cursor: pointer;
	border-radius: 2.3rem;
	border: .2rem solid #000;
}

	.nav-menu-close:hover {
		background: url("../../Images/Gx/crossHover.svg") center center no-repeat;
		border: .2rem solid #0066CC;
	}

.nav-list {
	list-style: none;
	padding: 0 0 2rem;
	text-transform: uppercase;
	overflow: auto;
}

.nav-mega-menu .nav-list li {
	padding: 1rem 0
}

main {
	padding-top: 9.6rem;
}

/* Footer Style ***/
footer a {
	cursor: pointer;
}

	footer a:hover,
	footer a:active {
		color: #fff;
		text-decoration: underline;
	}

.footer-section {
	padding: 4rem 0 2.4rem;
}

	.footer-section p {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}

.footer-section-gray {
	padding: 1.5rem 0 3rem;
	font-size: 1.4rem;
}

	.footer-section-gray p {
		padding-bottom: 1rem;
	}

	.footer-section-gray ul li {
		margin: 0.2rem 1rem;
	}

.list-inline-item:not(:last-child) {
	margin-right: 1rem;
}

.footer-section-gray li:first-child {
	margin-left: 0;
}

.footer-section-gray li:last-child {
	margin-right: 0;
}

/* Banner Style */
.hero-banner {
	margin-bottom: 4rem;
}

	.hero-banner .mt {
		margin-top: 2rem;
	}

	.hero-banner p {
		margin-bottom: 2rem;
	}

.product-section {
	margin-top: 2rem;
}

.banner-section {
	padding: 0 0 6rem;
	position: relative;
}

.page-banner-section {
	clear: both;
	padding: 0 0 1rem;
	position: relative;
	overflow: hidden;
}

.page-banner-section-bg {
	clear: both;
	position: relative;
}

.banner-img-wrap-dark {
	position: relative;
	display: flex;
	justify-content: center;
}

	.banner-img-wrap-dark img {
		max-width: max-content;
	}

.banner-content {
	position: relative;
	z-index: 3;
	width: 100%;
	padding: 2rem 0;
}

	.banner-content h1,
	.banner-content h2 {
		margin-bottom: 0;
	}

		.banner-content .h1,
		.banner-content h2.text-green,
		.banner-content h3,
		.banner-content h4,
		.banner-content p {
			margin-bottom: 2rem;
		}

/* card */
.insights-section #card-row {
	margin-bottom: 1rem;
}

.card .img-fluid {
	object-fit: cover;
	width: 100%;
}

.product-card-section .card,
.product-section .card,
.about-card {
	background-color: #000;
}

.card .dark-card-link {
	background-color: #000;
	font-size: 2rem;
	line-height: 2.4rem;
	padding: 1.4rem 2rem;
	display: flex;
	position: relative;
}

	.card .dark-card-link:after {
		content: url("../../Images/Gx/cardArrowGreen.svg");
		width: 2.4rem;
		height: 2.2rem;
		margin: 0 0 0 2rem;
	}

.about-card,
.product-card {
	overflow: hidden;
}

	.product-section .card:hover,
	.product-section .card:active,
	.product-card-section .card:hover,
	.product-card-section .card:active,
	.about-card:hover .dark-card-link,
	.about-card:active .dark-card-link,
	.product-card:hover .dark-card-link,
	.product-card:active .dark-card-link,
	.about-card:hover,
	.about-card:active {
		background-color: #06c;
	}

		.about-card:hover img {
			transform: scale(.7);
		}

	.product-card:hover img {
		transform: scale(1.2);
	}

	.about-card:hover .dark-card-link:after,
	.about-card:active .dark-card-link:after,
	.product-card:hover .dark-card-link:after,
	.product-card:active .dark-card-link:after {
		content: url("../../Images/Gx/cardArrowWhite.svg");
	}

.card-arrow-link {
	font-size: 1.4rem;
	text-transform: uppercase;
	display: flex;
}

	.card-arrow-link:after {
		content: url("../../Images/Gx/cardArrowGray.svg");
		width: 1.5rem;
		height: 1.5rem;
		margin: .3rem 0 0 1rem;
	}

	.card-arrow-link:hover:after,
	.card-arrow-link:active:after {
		content: url("../../Images/Gx/cardArrowBlue.svg");
		margin: .3rem 0 0 1.5rem;
	}

/* Insights carousel */
.insights-section .card-body {
	min-height: 16.5rem;
}

.btn-previous,
.btn-next {
	height: 3rem;
	width: 1.7rem;
	border: 0;
}

.btn-previous {
	background: url("../../Images/Gx/btnPrevious.svg") 0 0 no-repeat transparent;
	margin-right: 1.5rem;
}

.btn-next {
	background: url("../../Images/Gx/btnNext.svg") 0 0 no-repeat transparent;
	margin-left: 1.5rem;
}

.carousel-dots {
	background-color: #fff;
	width: 1.5rem;
	height: 1.5rem;
	margin: .1rem 1.8rem;
	border: 0;
	border-radius: 50%;
	vertical-align: super;
}

	.carousel-dots.active {
		background-color: #5EC72A;
	}

.faq-accordion {
	padding: 3.5rem 0;
	border-bottom: .1rem solid #333333;
	position: relative;
}

.policy-accordion {
	padding: .5rem 0 1rem;
	position: relative;
}

	.faq-accordion h4,
	.policy-accordion h4 {
		cursor: pointer;
		width: calc(100% - 3rem);
		margin-bottom: 0;
	}

.faq-accordion:first-of-type {
	border-top: .1rem solid #333333;
}

.accordion-icon {
	position: absolute;
	right: .5rem;
	height: 2.4rem;
	width: 2.4rem;
}

.policy-accordion .accordion-icon {
	top: 1rem;
}

.accordion-icon.plus {
	background: url("../../Images/Gx/plus.svg") center center no-repeat;
}

.accordion-icon.minus {
	background: url("../../Images/Gx/minus.svg") center center no-repeat;
}

.accordion-icon.arrow-down {
	background: url("../../Images/Gx/plus.svg") center center no-repeat;
}

.accordion-icon.arrow-up {
	background: url("../../Images/Gx/minus.svg") center center no-repeat;
}

/* accordion */
.faq-answer,
.acc-section {
	display: none;
}

.faq-accordion.open .faq-answer,
.policy-accordion.open .acc-section {
	margin-top: 1rem;
	display: block;
}

/* members card */
.profile-container {
	display: flex;
	border: .1rem solid #ddd;
	margin: 2rem auto;
	background: #fff;
	flex-direction: column;
	max-width: 98vw;
}

.profile-img {
	width: 100%;
	padding: 4rem 1.5rem 0;
}

.profile-info {
	background: #000;
	color: #fff;
	padding: 2rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
}

.profile-contact {
	align-items: flex-start;
	gap: 2rem;
	align-self: stretch;
	display: flex;
}

.profile-icon {
	background: url("../../Images/Gx/profilePlus.svg") 0% 0% no-repeat;
	display: inline-block;
	height: 4.6rem;
	width: 4.6rem;
}

.profile-contact-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex: 1 0 0;
}

.profile-actions {
	align-items: center;
	gap: 1.5rem;
}

	.profile-actions a {
		background: #43c045;
		border-radius: .8rem;
		width: 2.8rem;
		height: 2.8rem;
		text-align: center;
		text-decoration: none;
		transition: background 0.2s;
	}

		.profile-actions a svg {
			width: 1.4rem;
			height: 1.4rem;
			margin: .75rem;
		}

.profile-title {
	color: #43c045;
}

.profile-container:hover .profile-title {
	color: #0066CC;
}

.profile-container:hover .profile-img {
	background-color: #0066CC;
}

.profile-container:hover .profile-icon {
	background: url("../../Images/Gx/profilePlusBlue.svg") 0% 0% no-repeat;
}

.profile-social-links {
	display: flex;
	position: absolute;
	right: .2rem;
	gap: 1rem;
}

.email-icon {
	float: right;
	background-color: #fff;
	border-radius: .6rem;
	padding: .8rem 1rem;
}

.team-member-container {
	margin-bottom: 3rem;
}

.team-member-img {
	width: 100%;
	padding: 4rem 1.5rem 0;
	border: .1rem solid #ddd;
	border-bottom: 0 solid #ddd;
	background: #fff;
}

.team-member-info {
	background: #000;
	color: #fff;
	padding: 2rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
}

.team-member-contact {
	align-items: flex-start;
	gap: 2rem;
	align-self: stretch;
	display: flex;
}

.team-member-icon {
	background: url(../../Images/Gx/profilePlus.svg) 0% 0% no-repeat;
	display: inline-block;
	height: 4.6rem;
	width: 4.6rem;
	cursor: pointer;
}

.team-member-contact-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex: 1 0 0;
}

.team-member-title {
	color: #43c045;
}

.team-member-container:hover .team-member-title {
	color: #0066CC;
}

.team-member-container:hover .team-member-img {
	border-color: #666;
	background-color: #0066CC;
}

.team-member-container:hover .team-member-icon {
	background: url("../../Images/Gx/profilePlusBlue.svg") 0% 0% no-repeat;
}

.modal-header,
.modal-footer {
	padding: 1.5rem;
	border: none;
}

	.modal-header button.btn-close {
		background-color: #5EC72A;
		border-radius: 50%;
		padding: 1.5rem !important;
		opacity: 1;
	}

.modal-body {
	padding: 1.5rem;
}

	.modal-body .profile-title {
		font-size: 2.8rem;
		font-weight: 400;
		line-height: 4rem;
		margin-bottom: 0;
		color: #333;
	}

	.modal-body .profile-actions {
		border-bottom: .1rem solid #ddd;
		border-top: .1rem solid #ddd;
		padding: 2rem .2rem;
		margin-top: 2rem;
		position: relative;
		display: flex;
		justify-content: space-between;
		margin-bottom: 2rem;
	}

.modal-footer {
	display: none;
}

.location-card {
	background: #D9D9D9;
	padding: 0;
}

	.location-card .address-info {
		padding: 2rem;
	}

/* contact-us */
.contact-us-form {
	padding: 2rem;
}

	.contact-us-form h3 {
		margin-bottom: 2rem;
	}

	.contact-us-form label {
		display: block;
		font-weight: 400;
		letter-spacing: .05em;
		cursor: default;
		text-transform: uppercase;
		color: #fff;
		margin-bottom: 2rem;
	}

	.contact-us-form .error_name,
	.contact-us-form .error_email {
		color: red;
		margin-top: .5rem;
	}

	.contact-us-form fieldset label > span > input,
	.contact-us-form fieldset label > span > textarea {
		width: 100%;
		max-width: 100%;
		background-color: #F2F2F2;
		padding-left: 0.5em;
		color: #333;
	}

	.contact-us-form fieldset label > span > input {
		height: 6rem;
	}

	.contact-us-form fieldset label > span > textarea {
		height: 18rem;
		text-align: left !important;
	}


.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-color: #23282d;
	/* Dark Gray 800 */
	opacity: 0.75;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	padding: 0;
	margin: 0 24px;
	position: relative;
}

form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: '';
	position: absolute;
	background-color: #fbfbfc;
	/* Light Gray 100 */
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.overlay {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1021;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	width: 100vw;
	height: 100vh;
	max-height: 100vh;
	visibility: hidden;
	background: rgb(0 0 0 / 50%);
	transition: all .2s ease-in-out;
	opacity: 0;
}

.overlay--opened {
	visibility: visible;
	opacity: 1;
}

.overlay-close {
	position: absolute;
	right: 2rem;
	margin-top: 0;
	width: 1.5em;
	height: 1.5em;
	padding: 0;
	overflow: hidden;
	font-size: 1em;
	color: #333;
}

	.overlay-close::before {
		content: '✕';
	}

.thank-you-message section {
	font-size: 2rem;
	width: 90%;
	max-width: 60rem;
	position: relative;
	padding: 4rem;
	background: #fff;
	border-radius: .2em;
	overflow: auto;
}

/* Page not Found */
.error-page {
	background-color: #333;
	color: #fff;
	display: flex;
	padding: 6rem;
	justify-content: center;
	align-items: center;
	text-align: center;
}

	.error-page img {
		max-width: 16rem;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		margin-bottom: 4rem;
	}

/* Privacy policy, Cookie Policy and terms of use */
.privacy-policy-section,
.cookie-policy-section,
.terms-use-section,
.article-section,
.events-section,
.reports-section {
	margin: 3rem 0;
}

	a.body-link:active,
	a.body-link:hover,
	.cookie-policy-section .col-lg-8 a:hover,
	.privacy-policy-section .col-lg-8 a:hover {
		color: #333;
		text-decoration: underline;
	}

	.privacy-policy-section table {
		width: 100%;
		border-collapse: collapse;
		font-size: 1.8rem;
	}

	.privacy-policy-section th,
	td {
		padding: .8rem;
		vertical-align: top;
	}

	.privacy-policy-section th {
		background-color: #333;
		color: #fff;
		text-align: left;
		font-weight: 400;
	}

	.privacy-policy-section ul {
		margin: 0;
		padding-left: 2rem;
	}

	.terms-use-section li {
		padding-bottom: .5rem;
	}

.justify-section {
	text-align: justify;
	margin-bottom: 2rem;
}

.modal-video .modal-dialog {
	height: calc(100vh - 12rem) !important;
	max-width: calc(100vw - 4rem) !important;
	width: calc(100vw - 2rem) !important;
	margin: 0 1rem;
}

	.modal-video .modal-dialog iframe {
		height: calc(100vh - 12rem) !important;
	}

@media (max-width: 991px) {

	.product-section .container,
	.product-card-section .container {
		width: 100%;
		padding: 0;
	}

	.explore-section h2 {
		margin-top: 2rem;
	}

	.right-panel p.text-small {
		display: none;
	}
}

@media (min-width: 992px) {

	h1,
	.h1 {
		font-size: 4.5rem;
		margin-bottom: 4rem;
	}

	h2,
	.h2 {
		font-size: 3.2rem;
	}

	h3,
	.h3 {
		font-size: 2.6rem;
	}

	.col-lg-20 {
		flex: 0 0 auto;
		width: 20%;
	}

	.container {
		padding: 0;
	}

	.component {
		margin-bottom: 3rem;
		padding: 0 0;
	}

	.header {
		padding: 2rem 0;
	}

	.logo {
		width: 16rem;
	}

	.nav-icon {
		display: none
	}

	.mobile-navigation {
		background: transparent;
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		height: auto;
		display: flex;
		justify-content: space-between;
		z-index: 9;
		display: flex;
		flex-grow: 1;
	}

	.nav-back {
		display: none
	}

	.nav-mega-menu {
		left: 0;
		top: 9rem;
		transform: translateY(-500%)
	}

	.nav-mega-menu--open {
		transform: translateY(0)
	}

	.nav-mega-content {
		width: 96rem;
		max-width: 96rem;
		height: auto;
		max-height: 50rem;
		min-height: 30rem;
		grid-gap: 5rem;
		grid-template-columns: 33rem auto;
		display: grid
	}

	.nav-menu-close {
		display: flex
	}


	.nav-list.three {
		columns: 3
	}

	.nav-mega-content {
		grid-gap: 1rem
	}

	.nav-mega-content {
		max-width: 96rem;
		width: 96rem
	}

	.left-panel {
		padding: 2rem 2rem 3rem;
	}

	.right-panel {
		padding: 3rem 2rem;
	}

		.nav-page-name,
		.right-panel h3 {
			margin-bottom: 2rem;
		}

	main {
		padding-top: 10rem;
	}

	.footer-section-gray {
		padding: 1.5rem 0;
	}

		.footer-section-gray p {
			padding-bottom: 0;
		}

		.footer-section-gray ul li {
			margin: 0.6rem 1rem;
		}

	.btn {
		width: auto;
		margin-bottom: 0;
	}

	.blue-bg {
		padding: 11rem 0;
	}

	.black-bg {
		padding: 9rem 0;
	}

		.black-bg .large-heading {
			font-size: 10.8rem;
			line-height: 12rem;
		}

	.page-banner-section,
	.page-banner-section-bg {
		min-height: 44rem;
		margin: auto;
		overflow: hidden;
	}

	.banner-section {
		padding: 12rem 0;
	}

	.banner-content {
		width: 50%;
		max-width: 65rem;
		padding: 5rem 1rem 5rem 0;
	}

		.banner-content .h1,
		.banner-content h2.text-green,
		.page-banner-section-bg h3,
		.page-banner-section-bg h4,
		.page-banner-section-bg p {
			margin-bottom: 3rem;
		}

	.page-banner-section h2:last-of-type,
	.page-banner-section p {
		margin-bottom: 2.4rem;
	}

	.banner-img-wrap {
		bottom: 0;
		display: flex;
		height: 100%;
		position: absolute;
		width: 50%;
	}

		.banner-img-wrap img {
			object-fit: contain;
			margin: auto;
			max-height: 48rem;
			max-height: -webkit-fill-available;
			overflow: hidden;
		}

		.banner-img-wrap.start-0 {
			padding-right: 2rem;
		}

	.page-banner .banner-img-wrap img {
		margin: auto auto 0;
	}

	.banner-img-wrap-dark {
		position: absolute;
		top: 0;
		right: 0;
		width: 60%;
		height: 100%;
		overflow: hidden;
	}

		.banner-img-wrap-dark:before {
			content: "";
			position: absolute;
			width: 130%;
			height: 100%;
			z-index: 1;
			top: 0;
			background: #000000;
			background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .15) 20%, rgba(0, 0, 0, .1) 80%, #000 100%);
		}

	.Product-Section .col-lg-4,
	.insights-section .col-4 {
		padding-right: 1.75rem;
	}

	.ProductHub-Section .col-lg-4 {
		padding-right: 4rem;
		padding-bottom: 1.8rem;
	}

	.profile-container {
		flex-direction: row;
	}

	.profile-actions {
		display: flex !important;
	}

	.profile-img {
		width: 50%;
		display: flex;
		justify-content: center;
		background: #fff;
	}

		.profile-img img {
			max-width: 98%;
			height: auto;
			border-radius: 0;
			object-fit: cover;
		}

	.profile-info {
		width: 50%;
		justify-content: center;
		padding: 4rem;
	}


	.team-member-container {
		background: #000;
		padding: 0 !important;
		width: calc(33.33333333% - 1.4rem);
	}

		.team-member-container:first-of-type {
			margin-right: 2rem;
		}

		.team-member-container:last-of-type {
			margin-left: 2rem;
		}

	.bg-blue-arrow-link {
		margin-bottom: 4rem;
	}

	.contact-us-form {
		padding: 8rem;
	}

		.contact-us-form h3 {
			margin-bottom: 4rem;
		}

	.error-page {
		padding: 12rem;
		text-align: left;
	}

		.error-page img {
			max-width: 30rem;
			padding-right: 5rem;
			margin-right: 0;
		}

	.privacy-policy-section,
	.cookie-policy-section,
	.terms-use-section,
	.article-section,
	.events-section,
	.reports-section {
		margin: 9rem 0;
	}

	.text-container {
		max-width: 80rem;
	}

	.modal-lg,
	.modal-xl {
		--bs-modal-width: 120rem;
	}

	.justify-section {
		margin-bottom: 5rem;
	}
}

@media (min-width: 1200px) {
	.logo {
		width: 20rem;
	}

	h1,
	.h1 {
		font-size: 5.4rem;
	}

	h2,
	.h2 {
		font-size: 3.6rem;
	}

	h3,
	.h3 {
		font-size: 2.8rem;
	}

	.nav-mega-content {
		max-width: 114rem;
		width: 114rem
	}
}

@media (min-width: 1400px) {

	h1,
	.h1 {
		font-size: 6rem;
	}

	h2,
	.h2 {
		font-size: 4rem;
	}

	.nav-mega-content {
		max-width: 132rem;
		width: 132rem
	}

	.hero-banner .mt {
		margin-top: 6rem;
	}

	.hero-banner p:last-of-type {
		margin-bottom: 4rem;
	}

	.page-banner-section,
	.page-banner-section-bg {
		min-height: 46rem;
	}

	.banner-content {
		padding: 6rem 1rem 6rem 0;
	}

		.banner-content .h1,
		.banner-content h2.text-green,
		.page-banner-section-bg h3,
		.page-banner-section-bg h4,
		.page-banner-section-bg p {
			margin-bottom: 4rem;
		}
}

@media (min-width: 1600px) {

	.container,
	.page-banner-section {
		max-width: 144rem;
		margin: 0 auto;
	}

	.hero-banner {
		width: 100%;
	}

		.hero-banner .my-auto img {
			max-height: 83rem;
			float: right;
		}

	.nav-mega-content {
		max-width: 144rem;
		width: 144rem
	}

	.page-banner-section,
	.page-banner-section-bg {
		min-height: 48rem;
	}
}

@media (min-width: 1800px) {
	.banner-img-wrap img {
		margin: 0;
	}

	.container,
	.page-banner-section {
		max-width: 164rem
	}

	.nav-mega-content {
		max-width: 164rem;
		width: 164rem
	}
}
