.gobyweb2-services-hero,
.gobyweb2-services-hero * {
	box-sizing: border-box;
}

.gobyweb2-services-hero {
	--goby-services-glow: rgba(9, 68, 189, .78);
	position: relative;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	min-height: 694px;
	overflow: hidden;
	isolation: isolate;
	background-color: #001b63;
	background-image:
		radial-gradient(ellipse at 50% 54%, var(--goby-services-glow) 0%, rgba(4, 47, 139, .74) 35%, rgba(0, 25, 90, .96) 72%, #001347 100%);
}

.gobyweb2-services-hero::before,
.gobyweb2-services-hero::after {
	content: "";
	position: absolute;
	pointer-events: none;
	z-index: 1;
}

.gobyweb2-services-hero::before {
	inset: 0;
	background:
		radial-gradient(circle at 50% 8%, rgba(36, 108, 255, .24), transparent 31%),
		radial-gradient(circle at 50% 100%, rgba(21, 85, 255, .32), transparent 43%);
}

.gobyweb2-services-hero::after {
	left: 50%;
	bottom: -31%;
	width: min(1120px, 84vw);
	height: 360px;
	transform: translateX(-50%) perspective(480px) rotateX(62deg);
	transform-origin: center bottom;
	opacity: .34;
	background-image:
		linear-gradient(rgba(57, 132, 255, .55) 1px, transparent 1px),
		linear-gradient(90deg, rgba(57, 132, 255, .48) 1px, transparent 1px);
	background-size: 56px 36px;
	filter: drop-shadow(0 0 8px rgba(44, 107, 255, .4));
}

.gobyweb2-services-hero__background,
.gobyweb2-services-hero__grid,
.gobyweb2-services-hero__vignette,
.gobyweb2-services-hero__side {
	position: absolute;
	pointer-events: none;
}

.gobyweb2-services-hero__background {
	inset: 0;
	z-index: 0;
}

.gobyweb2-services-hero__side {
	top: 0;
	bottom: 0;
	width: 470px;
	background-repeat: no-repeat;
	background-size: auto 100%;
	filter: saturate(1.06) contrast(1.02);
	z-index: 2;
}

.gobyweb2-services-hero__side--left {
	left: 0;
	background-position: left center;
	-webkit-mask-image: linear-gradient(90deg, #000 0%, #000 76%, rgba(0,0,0,.84) 87%, transparent 100%);
	mask-image: linear-gradient(90deg, #000 0%, #000 76%, rgba(0,0,0,.84) 87%, transparent 100%);
}

.gobyweb2-services-hero__side--right {
	right: 0;
	background-position: right center;
	-webkit-mask-image: linear-gradient(270deg, #000 0%, #000 76%, rgba(0,0,0,.84) 87%, transparent 100%);
	mask-image: linear-gradient(270deg, #000 0%, #000 76%, rgba(0,0,0,.84) 87%, transparent 100%);
}

.gobyweb2-services-hero__grid {
	left: 8%;
	right: 8%;
	bottom: -8px;
	height: 165px;
	z-index: 1;
	opacity: .33;
	background:
		linear-gradient(90deg, transparent 0%, rgba(38, 112, 255, .7) 50%, transparent 100%) 50% 96% / 100% 1px no-repeat,
		radial-gradient(ellipse at 50% 100%, rgba(28, 100, 255, .45), transparent 61%);
}

.gobyweb2-services-hero__vignette {
	inset: 0;
	z-index: 3;
	background: radial-gradient(circle at center, transparent 45%, rgba(0, 7, 45, .28) 100%);
}

.gobyweb2-services-hero__inner {
	position: relative;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 1400px;
	min-height: inherit;
	margin: 0 auto;
	padding: 45px 24px;
}

.gobyweb2-services-hero__content {
	position: relative;
	z-index: 6;
	width: 100%;
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
	transform: translateY(2px);
}

.gobyweb2-services-hero__content::before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 50%;
	width: min(860px, 94vw);
	height: 610px;
	transform: translate(-50%, -50%);
	background: radial-gradient(ellipse at center, rgba(0, 27, 98, .96) 0%, rgba(0, 27, 98, .89) 46%, rgba(0, 27, 98, .5) 69%, rgba(0, 27, 98, 0) 84%);
	filter: blur(.2px);
	pointer-events: none;
}

.gobyweb2-services-hero__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 25px;
	padding: 9px 24px;
	border: 1px solid rgba(60, 129, 255, .68);
	border-radius: 999px;
	background-color: rgba(2, 40, 109, .72);
	box-shadow: inset 0 0 17px rgba(35, 111, 255, .22), 0 0 24px rgba(0, 85, 255, .18);
	color: #f8faff;
	font-family: "Poppins", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.gobyweb2-services-hero__heading {
	max-width: 740px;
	margin: 0 auto 23px;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-size: 54px;
	font-weight: 700;
	line-height: 1.23;
	letter-spacing: -.035em;
	text-wrap: balance;
	text-shadow: 0 3px 18px rgba(0, 7, 45, .24);
}

.gobyweb2-services-hero__description {
	width: 100%;
	max-width: 660px;
	margin: 0 auto 34px;
	color: #e8edff;
	font-family: "Inter", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.62;
	text-shadow: 0 2px 12px rgba(0, 7, 45, .32);
}

.gobyweb2-services-hero__buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 28px;
}

.gobyweb2-services-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 21px;
	min-width: 215px;
	min-height: 62px;
	padding: 19px 40px;
	border: 1px solid transparent;
	border-radius: 10px;
	font-family: "Poppins", sans-serif;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.15;
	text-decoration: none !important;
	white-space: nowrap;
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease;
}

.gobyweb2-services-hero__button:hover,
.gobyweb2-services-hero__button:focus {
	transform: translateY(-2px);
}

.gobyweb2-services-hero__button:focus-visible {
	outline: 3px solid rgba(255, 255, 255, .55);
	outline-offset: 3px;
}

.gobyweb2-services-hero__button--primary {
	color: #fff;
	background-color: #ff5a0a;
	border-color: #ff6b17;
	box-shadow: 0 12px 35px rgba(255, 91, 7, .22), inset 0 1px 0 rgba(255,255,255,.16);
}

.gobyweb2-services-hero__button--primary:hover,
.gobyweb2-services-hero__button--primary:focus {
	color: #fff;
	background-color: #ff7a16;
	border-color: #ff7a16;
	box-shadow: 0 15px 38px rgba(255, 91, 7, .3);
}

.gobyweb2-services-hero__button--secondary {
	color: #0d42c9;
	background-color: #fff;
	border-color: #fff;
	box-shadow: 0 12px 35px rgba(0, 12, 65, .2), inset 0 1px 0 rgba(255,255,255,.72);
}

.gobyweb2-services-hero__button--secondary:hover,
.gobyweb2-services-hero__button--secondary:focus {
	color: #fff;
	background-color: #1250e8;
	border-color: #1250e8;
}

.gobyweb2-services-hero__button-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	line-height: 1;
}

.gobyweb2-services-hero__button-icon svg {
	display: block;
	width: 17px;
	height: 17px;
	fill: currentColor;
}

@media (max-width: 1199px) {
	.gobyweb2-services-hero__heading {
		font-size: 48px;
	}
	.gobyweb2-services-hero__side {
		filter: saturate(1.04) brightness(.92);
	}
}

@media (max-width: 1024px) {
	.gobyweb2-services-hero {
		min-height: 620px;
	}
	.gobyweb2-services-hero__inner {
		padding: 50px 24px;
	}
	.gobyweb2-services-hero__content {
		max-width: 690px;
	}
	.gobyweb2-services-hero__content::before {
		width: min(790px, 102vw);
		height: 570px;
		background: radial-gradient(ellipse at center, rgba(0, 27, 98, .97) 0%, rgba(0, 27, 98, .92) 48%, rgba(0, 27, 98, .66) 67%, rgba(0, 27, 98, .08) 84%, transparent 100%);
	}
	.gobyweb2-services-hero__heading {
		font-size: 44px;
		line-height: 1.22;
	}
	.gobyweb2-services-hero__description {
		font-size: 17px;
	}
	.gobyweb2-services-hero__button {
		min-width: 190px;
		min-height: 56px;
		padding: 17px 32px;
		font-size: 15px;
	}
}

@media (max-width: 767px) {
	.gobyweb2-services-hero {
		min-height: 610px;
		background-image: radial-gradient(ellipse at 50% 46%, rgba(9, 68, 189, .9) 0%, rgba(4, 47, 139, .92) 38%, rgba(0, 25, 90, .99) 78%, #001347 100%);
	}
	.gobyweb2-services-hero::after {
		bottom: -22%;
		width: 150vw;
		height: 260px;
		opacity: .25;
	}
	.gobyweb2-services-hero__inner {
		padding: 54px 18px;
	}
	.gobyweb2-services-hero__side {
		width: 255px;
		opacity: .42;
		background-size: auto 84%;
	}
	.gobyweb2-services-hero__side--left {
		left: -104px;
		background-position: left bottom;
	}
	.gobyweb2-services-hero__side--right {
		right: -98px;
		background-position: right bottom;
	}
	.gobyweb2-services-hero__content {
		max-width: 100%;
	}
	.gobyweb2-services-hero__content::before {
		width: 112vw;
		height: 560px;
		background: radial-gradient(ellipse at center, rgba(0, 27, 98, .985) 0%, rgba(0, 27, 98, .965) 55%, rgba(0, 27, 98, .78) 75%, transparent 100%);
	}
	.gobyweb2-services-hero__badge {
		margin-bottom: 21px;
		padding: 8px 18px;
		font-size: 11px;
		letter-spacing: .13em;
	}
	.gobyweb2-services-hero__heading {
		max-width: 580px;
		margin-bottom: 20px;
		font-size: clamp(31px, 9vw, 39px);
		line-height: 1.22;
		letter-spacing: -.025em;
	}
	.gobyweb2-services-hero__description {
		max-width: 540px;
		margin-bottom: 29px;
		font-size: 15px;
		line-height: 1.58;
	}
	.gobyweb2-services-hero__buttons {
		gap: 13px;
	}
	.gobyweb2-services-hero__button {
		min-width: 0;
		min-height: 50px;
		padding: 15px 24px;
		font-size: 13px;
		gap: 12px;
	}
	.gobyweb2-services-hero__button-icon,
	.gobyweb2-services-hero__button-icon svg {
		width: 14px;
		height: 14px;
		font-size: 14px;
	}
}

@media (max-width: 479px) {
	.gobyweb2-services-hero {
		min-height: 570px;
	}
	.gobyweb2-services-hero__inner {
		padding-left: 16px;
		padding-right: 16px;
	}
	.gobyweb2-services-hero__heading {
		font-size: clamp(28px, 9.3vw, 35px);
	}
	.gobyweb2-services-hero__description br {
		display: none;
	}
	.gobyweb2-services-hero__buttons {
		flex-direction: column;
		width: 100%;
	}
	.gobyweb2-services-hero__button {
		width: min(100%, 280px);
	}
}
