.btn {
	align-items: center;
	background-color: #f9f9f9;
	border: solid #eaeaea;
	border-radius: 4px;
	border-width: 1px 1px 2px;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	color: #040404;
	cursor: pointer;
	display: flex;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	font-weight: 600;
	height: 36px;
	justify-content: center;
	line-height: 1;
	padding: 12px;
	text-decoration: none;
	transition: background .3s ease
}

.btn[disabled] {
	opacity: .5;
	pointer-events: none
}

.btn .icon {
	margin: 0 4px 0 0;
	pointer-events: none
}

.btn--primary {
	background-color: #155dee;
	border-color: #155dee;
	color: #fff;
	text-shadow: 0 1px 2px #155dee
}

.btn--primary:hover {
	background-color: #004eea
}

.btn--animate-primary {
	animation: slideBg 12s infinite forwards, boxPulse 1.5s infinite forwards;
	background: linear-gradient(90deg, #9b5afa 0, #155dee 50%, #68d79f);
	background-size: 500%;
	border: none;
	color: #fff
}

.btn--dark {
	background-color: #01233e;
	border-color: #040404;
	color: #fff;
	text-shadow: 0 1px 2px #040404
}

.btn--dark:hover {
	background-color: #040404
}

.btn--secondary {
	background-color: #80d8a8;
	border-color: #7fc8a0;
	color: #fff;
	text-shadow: 0 1px 2px #7fc8a0
}

.btn--secondary:hover {
	background-color: #7fc8a0
}

.btn--secondary-dark {
	background-color: #216b43;
	border-color: #25563b;
	color: #fff;
	text-shadow: 0 1px 2px #25563b
}

.btn--secondary-dark:hover {
	background-color: #25563b
}

.btn--black {
	background-color: #040404;
	border-color: #040404;
	color: #fff;
	text-shadow: 0 1px 2px #040404
}

.btn--white {
	background-color: #fff;
	border: 0;
	box-shadow: none;
	color: #040404
}

.btn--gray,
.btn--white:hover {
	background-color: #eaeaea
}

.btn--gray {
	border-color: #cfcfcf;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .06);
	color: #040404
}

.btn--gray:hover {
	background-color: #cfcfcf
}

.btn--elfsight {
	background-color: #f93362;
	border-color: #c9294f;
	color: #fff;
	text-shadow: 0 1px 2px #c9294f
}

.btn--elfsight:hover {
	background-color: #c9294f
}

.btn--error {
	background-color: #ff3939;
	border-color: #ec3535;
	color: #fff;
	text-shadow: 0 1px 2px #ec3535
}

.btn--notice {
	background-color: #fde724;
	border-color: #f2de27;
	color: #040404;
	text-shadow: 0 1px 2px #f2de27
}

.btn--notice:hover {
	background-color: #f2de27
}

.btn--tab {
	background: transparent;
	border: 0;
	border-bottom: 2px solid #eaeaea;
	border-radius: 0;
	box-shadow: none;
	color: #595959;
	text-shadow: none
}

.btn--tab:first-child {
	border-top-left-radius: 4px
}

.btn--tab:last-child {
	border-top-right-radius: 4px
}

.btn--tab.btn--active,
.btn--tab:hover {
	background-color: #f9f9f9
}

.btn--tab.btn--active {
	border-bottom-color: #155dee
}

.btn--outline {
	background-color: transparent;
	border-width: 2px;
	box-shadow: none;
	text-shadow: none
}

.btn--outline.btn--primary {
	color: #155dee
}

.btn--outline.btn--primary:hover {
	background-color: #155dee;
	color: #fff
}

.btn--outline.btn--secondary {
	color: #80d8a8
}

.btn--outline.btn--secondary:hover {
	background-color: #80d8a8;
	color: #fff
}

.btn--outline.btn--secondary-dark {
	color: #216b43
}

.btn--outline.btn--secondary-dark:hover {
	background-color: #216b43;
	color: #fff
}

.btn--outline.btn--black {
	color: #040404
}

.btn--outline.btn--black:hover {
	background-color: #040404;
	color: #fff
}

.btn--outline.btn--gray {
	color: #595959
}

.btn--outline.btn--gray:hover {
	background-color: #595959;
	color: #040404
}

.btn--outline.btn--white {
	border: 2px solid #fff;
	color: #fff
}

.btn--outline.btn--white:hover {
	background-color: #fff;
	color: #040404
}

.btn--outline.btn--error {
	color: #ff3939
}

.btn--outline.btn--error:hover {
	background-color: #ff3939;
	color: #fff
}

.btn--outline.btn--notice {
	color: #fde724
}

.btn--outline.btn--notice:hover {
	background-color: #fde724;
	color: #fff
}

.btn--text {
	border: 0;
	box-shadow: none;
	font-weight: 400;
	height: auto;
	padding: 0;
	text-shadow: none
}

.btn--text,
.btn--text:hover {
	background-color: transparent
}

.btn--text:hover {
	text-decoration: underline
}

.btn--text.btn--large,
.btn--text.btn--small {
	height: auto;
	padding: 0
}

.btn--text.btn--primary {
	color: #155dee
}

.btn--text.btn--secondary {
	color: #80d8a8
}

.btn--text.btn--secondary-dark {
	color: #216b43
}

.btn--text.btn--black {
	color: #040404
}

.btn--text.btn--gray {
	color: #595959
}

.btn--text.btn--error {
	color: #ff3939
}

.btn--text.btn--notice {
	color: #fde724
}

.btn--link {
	border: 0;
	box-shadow: none;
	display: inline-flex;
	font-size: 16px;
	font-weight: 400;
	height: auto;
	padding: 0;
	text-align: left;
	text-shadow: none
}

.btn--link,
.btn--link:hover {
	background-color: transparent
}

.btn--link:hover {
	text-decoration: underline
}

.btn--link.btn--primary {
	color: #155dee
}

.btn--link.btn--secondary {
	color: #80d8a8
}

.btn--link.btn--secondary-dark {
	color: #216b43
}

.btn--link.btn--black {
	color: #040404
}

.btn--link.btn--gray {
	color: #595959
}

.btn--link.btn--error {
	color: #ff3939
}

.btn--link.btn--notice {
	color: #fde724
}

.btn--clear {
	border: 0;
	box-shadow: none;
	text-shadow: none
}

.btn--clear,
.btn--clear:hover {
	background-color: transparent
}

.btn--clear.btn--primary {
	color: #155dee
}

.btn--clear.btn--secondary {
	color: #80d8a8
}

.btn--clear.btn--secondary-dark {
	color: #216b43
}

.btn--clear.btn--black {
	color: #040404
}

.btn--clear.btn--gray {
	color: #595959
}

.btn--clear.btn--error {
	color: #ff3939
}

.btn--clear.btn--notice {
	color: #fde724
}

.btn--large {
	font-size: 16px;
	height: 54px;
	min-width: 158px;
	padding: 18px
}

.btn--small {
	font-size: 12px;
	height: 36px;
	padding: 4px 10px
}

.btn--small .icon {
	width: 16px
}

.btn--tiny {
	font-size: 12px;
	height: auto;
	padding: 6px 10px
}

.btn--tiny .icon {
	height: 18px;
	width: 18px
}

.btn--left {
	justify-content: flex-start
}

.btn--right {
	justify-content: flex-end
}

.btn--wide {
	min-width: 200px
}

.btn--full {
	width: 100%
}

.btn--hide-label {
	min-width: 0
}

.btn--hide-label .btn__label {
	position: absolute!important;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	width: 1px;
	word-wrap: normal
}

.btn--hide-label .icon {
	margin: 0
}

.btn--reverse:not(.btn--hide-label) .icon {
	margin: 0 0 0 4px
}

.btn--no-shadow {
	box-shadow: none
}

.btn--single-line .btn__label {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: pre
}

.btn--flat {
	border-bottom-width: 1px;
	box-shadow: none
}

.btn--fit {
	width: -moz-fit-content;
	width: fit-content
}


/*******************************/

.system-messages {
	position: fixed;
	right: 0;
	top: 0;
	z-index: 20
}

.system-messages__message {
	align-items: center;
	border-bottom-width: 2px;
	border-radius: 4px;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	display: grid;
	gap: 12px;
	grid-template-columns: 24px 200px 18px;
	line-height: 1.25;
	margin: 6px;
	padding: 10px 14px
}

.system-messages__message--info {
	background: #155dee;
	border: 1px solid #55b8e5;
	color: #fff
}

.system-messages__message--info .system-messages__icon path {
	fill: #299acd
}

.system-messages__message--info .system-messages__action .icon path {
	fill: #fff
}

.system-messages__message--info a {
	color: inherit
}

.system-messages__message--notice {
	background: #fde724;
	border: 1px solid #f2de27;
	color: #605810
}

.system-messages__message--notice .system-messages__icon path {
	fill: #d4c008
}

.system-messages__message--notice .system-messages__action .icon path {
	fill: #605810
}

.system-messages__message--error {
	background: #ff3939;
	border: 1px solid #ec3535;
	color: #fff
}

.system-messages__message--error .system-messages__icon path {
	fill: #c81313
}

.system-messages__message--error .system-messages__action .icon path {
	fill: #fff
}

.system-messages__message--success {
	background: #80d8a8;
	border: 1px solid #7fc8a0;
	color: #fff
}

.system-messages__message--success .system-messages__icon path {
	fill: #26c26c
}

.system-messages__message--success .system-messages__action .icon path {
	fill: #fff
}

.system-messages__label {
	font-size: 14px;
	transform: translateY(1px)
}

.system-messages__action {
	border-radius: 0
}

.system-messages__action .icon {
	width: 18px
}


/*******************************/

.visually-hidden {
	position: absolute!important;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	width: 1px;
	word-wrap: normal
}

img,
video {
	max-width: 100%
}

.layout {
	display: flex;
	flex-flow: column;
	min-height: 100dvh
}

.container {
	margin: 0 auto;
	max-width: 1320px;
	padding: 0 24px;
	width: 100%
}

@media (min-width:48em) {
	.container {
		padding: 0 48px
	}
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility
}

body {
	color: #040404;
	font-size: 18px
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 600;
	line-height: 1.55;
	margin-bottom: 16px
}

.h1,
h1 {
	font-size: 38px
}

.h2,
h2 {
	font-size: 32px
}

.h3,
h3 {
	font-size: 26px
}

.h4,
h4 {
	font-size: 22px
}

.h5,
h5 {
	color: #aaa;
	font-size: 20px
}

.h6,
h6 {
	color: #aaa;
	font-size: 16px
}

p {
	line-height: 1.55
}

b {
	font-weight: 600
}

i {
	font-style: italic
}

.text-link {
	color: inherit;
	text-decoration: none
}

a {
	color: #155dee
}

.slide-up-enter-active,
.slide-up-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-up-enter-from,
.slide-up-leave-to {
	translate: 0 100%
}

.slide-up-fade-enter-active,
.slide-up-fade-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-up-fade-enter-from,
.slide-up-fade-leave-to {
	opacity: 0;
	translate: 0 10px
}

.slide-down-fade-enter-active,
.slide-down-fade-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-down-fade-enter-from,
.slide-down-fade-leave-to {
	opacity: 0;
	translate: 0 -10px
}

.slide-left-fade-enter-active,
.slide-left-fade-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-left-fade-enter-from,
.slide-left-fade-leave-to {
	opacity: 0;
	translate: 10px 0
}

.slide-right-fade-enter-active,
.slide-right-fade-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-right-fade-enter-from,
.slide-right-fade-leave-to {
	opacity: 0;
	translate: -10px 0
}

.fade-enter-active,
.fade-leave-active {
	transition: opacity .3s cubic-bezier(.25, .46, .45, .94)
}

.fade-enter-from,
.fade-leave-to {
	opacity: 0;
	visibility: hidden;
}


/*//*/

.fade-enter-to {
	opacity: 1;
}

.fade-delay-leave-enter-active,
.fade-delay-leave-leave-active {
	transition: opacity .3s cubic-bezier(.25, .46, .45, .94)
}

.fade-delay-leave-leave-active {
	transition-delay: .25s
}

.fade-delay-leave-enter-from,
.fade-delay-leave-leave-to {
	opacity: 0
}

.slide-right-enter-active,
.slide-right-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94)
}

.slide-right-enter-from,
.slide-right-leave-to {
	translate: -100% 0
}

.slide-left-enter-active,
.slide-left-leave-active {
	transition: all .3s cubic-bezier(.25, .46, .45, .94);
}

.slide-left-enter-from,
.slide-left-leave-to {
	translate: 100% 0
}


/*//*/

.slide-left-enter-to {
	translate: 0 0
}

.list-enter-active,
.list-leave-active,
.list-move {
	transition: all .5s ease
}

.list-enter-from,
.list-leave-to {
	opacity: 0;
	transform: translateX(30px)
}

.list-leave-active {
	position: absolute
}

@keyframes slideBg {
	0% {
		background-position: 0 50%
	}
	50% {
		background-position: 100%
	}
	to {
		background-position: 0 50%
	}
}

@keyframes boxPulse {
	0% {
		box-shadow: 0 0 0 0 rgba(85, 184, 229, .4)
	}
	70% {
		box-shadow: 0 0 0 10px rgba(85, 184, 229, 0)
	}
	to {
		box-shadow: 0 0 0 0 rgba(85, 184, 229, 0)
	}
}

@keyframes skeleton-loading {
	0% {
		background-color: #f9f9f9
	}
	to {
		background-color: #eaeaea
	}
}

form {
	display: flex;
	flex-flow: column;
	gap: 10px
}

form.form-flush {
	gap: 0
}

.label {
	display: block;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 8px
}

.label .required {
	color: #ff3939
}

.label-subtitle {
	color: #aaa;
	display: block;
	font-size: 14px;
	margin-bottom: 10px;
	pointer-events: none
}

.label-subtitle--interactive {
	pointer-events: all
}

.form-control {
	display: block;
	margin-bottom: 18px
}

.form-control--flush {
	margin-bottom: 0
}

.form-control--tiny {
	margin-bottom: 4px
}

.form-control--small {
	margin-bottom: 10px
}

.form-control--full,
.form-control--full input,
.form-control--full select,
.form-control--full textarea {
	width: 100%
}

.form-control .message {
	margin-top: 6px
}

input[type=color].input,
input[type=date].input,
input[type=datetime-local].input,
input[type=datetime].input,
input[type=email].input,
input[type=month].input,
input[type=number].input,
input[type=password].input,
input[type=search].input,
input[type=tel].input,
input[type=text].input,
input[type=time].input,
input[type=url].input,
input[type=week].input,
select.input,
textarea.input {
	font-family: Source Sans\ 3, sans-serif;
	font-size: 16px
}

input[type=color].input.input-error,
input[type=date].input.input-error,
input[type=datetime-local].input.input-error,
input[type=datetime].input.input-error,
input[type=email].input.input-error,
input[type=month].input.input-error,
input[type=number].input.input-error,
input[type=password].input.input-error,
input[type=search].input.input-error,
input[type=tel].input.input-error,
input[type=text].input.input-error,
input[type=time].input.input-error,
input[type=url].input.input-error,
input[type=week].input.input-error,
select.input.input-error,
textarea.input.input-error {
	border-color: #ff3939
}

input[type=color].input[disabled],
input[type=date].input[disabled],
input[type=datetime-local].input[disabled],
input[type=datetime].input[disabled],
input[type=email].input[disabled],
input[type=month].input[disabled],
input[type=number].input[disabled],
input[type=password].input[disabled],
input[type=search].input[disabled],
input[type=tel].input[disabled],
input[type=text].input[disabled],
input[type=time].input[disabled],
input[type=url].input[disabled],
input[type=week].input[disabled],
select.input[disabled],
textarea.input[disabled] {
	cursor: not-allowed
}

input[type=date].input,
input[type=datetime-local].input,
input[type=email].input,
input[type=month].input,
input[type=number].input,
input[type=password].input,
input[type=search].input,
input[type=tel].input,
input[type=text].input,
input[type=time].input,
input[type=url].input,
input[type=week].input,
select.input {
	border: solid #eaeaea;
	border-radius: 4px;
	border-width: 1px 1px 2px;
	height: 36px;
	line-height: 1;
	max-width: 100%;
	min-width: 220px;
	padding: 1px 10px 0
}

input[type=color].input {
	-webkit-appearance: none;
	border: none
}

input[type=color].input::-webkit-color-swatch-wrapper {
	padding: 0
}

input[type=color].input::-webkit-color-swatch {
	border: none
}

textarea {
	border: solid #eaeaea;
	border-radius: 4px;
	border-width: 1px 1px 2px;
	line-height: 1.25;
	max-width: 100%;
	min-height: 140px;
	min-width: 220px;
	padding: 10px;
	resize: vertical
}

select {
	height: 36px;
	width: 220px
}

select[multiple] {
	border: 1px solid #eaeaea;
	border-radius: 4px;
	overflow-y: auto;
	padding: 12px
}

select[multiple] option {
	border-radius: 4px;
	padding: 6px
}

.field-wide {
	width: 100%
}

.field-checkbox .label,
.field-checkbox label {
	align-items: center;
	display: flex;
	gap: 6px;
	margin: 0
}

.field-checkbox-group {
	border: 1px solid #eaeaea;
	border-radius: 4px;
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, 1fr);
	padding: 12px
}

.field-radios .label+.field-radio,
.field-radios label+.field-radio {
	padding-top: 6px
}

.field-radios .field-radio {
	align-items: center;
	display: flex;
	gap: 6px;
	margin-left: 6px
}

.field-radios .field-radio .label,
.field-radios .field-radio label {
	font-weight: 400;
	margin: 0
}

.field-radios .field-radio input {
	margin: 0
}

.field-radios .field-radio+.field-radio {
	margin-top: 12px
}

.double-field,
.inline-field {
	display: flex;
	flex-flow: row;
	gap: 6px;
	position: relative
}

.double-field .custom-select__select,
.inline-field .custom-select__select {
	min-width: 0;
	width: 100%
}

.inline-field input[type=date],
.inline-field input[type=datetime-local],
.inline-field input[type=email],
.inline-field input[type=month],
.inline-field input[type=number],
.inline-field input[type=password],
.inline-field input[type=search],
.inline-field input[type=tel],
.inline-field input[type=text],
.inline-field input[type=time],
.inline-field input[type=url],
.inline-field input[type=week],
.inline-field select {
	flex-grow: 1;
	min-width: 0;
	width: auto
}

.inline-field .custom-select,
.inline-field .input-group {
	flex-grow: 1;
	width: auto
}

.inline-field .btn {
	white-space: pre
}

.double-field .custom-select,
.double-field input[type=date],
.double-field input[type=datetime-local],
.double-field input[type=email],
.double-field input[type=month],
.double-field input[type=number],
.double-field input[type=password],
.double-field input[type=search],
.double-field input[type=tel],
.double-field input[type=text],
.double-field input[type=time],
.double-field input[type=url],
.double-field input[type=week] {
	width: 50%
}

.input-group {
	align-items: stretch;
	display: flex
}

.input-group input {
	border-radius: 0
}

.input-group input:first-child {
	border-radius: 4px 0 0 4px
}

.input-group__text {
	align-items: center;
	background: #eaeaea;
	border: solid #cfcfcf;
	border-width: 1px 1px 2px;
	display: flex;
	font-size: 16px;
	padding: 0 10px
}

.input-group__text:first-child {
	border-radius: 4px 0 0 4px;
	border-right-color: #eaeaea
}

.input-group__text:last-child {
	border-left-color: #eaeaea;
	border-radius: 0 4px 4px 0
}

select:has(option:checked:disabled) {
	color: #595959
}

.icon--primary,
.icon--primary path {
	fill: #155dee
}

.icon--success,
.icon--success path {
	fill: #80d8a8
}

.icon--error,
.icon--error path {
	fill: #ff3939
}

.icon--notice,
.icon--notice path {
	fill: #fde724
}


/*******************************/

.site-header {
	background: #fff;
	color: #030712;
	padding: 12px 0;
	position: sticky;
	top: 0;
	transition: background .3s ease;
	width: 100%;
	z-index: 8;
	border-bottom: #f2f4f7 solid 1px;
}

.site-header--fixed {
	background: transparent;
	position: fixed
}

.site-header--stuck {
	background: rgba(1, 35, 62, .9)
}

.site-header a {
	color: #030712;
	text-decoration: none
}
.site-header .btn--primary{
	color: #fff;
}
.site-header__hamburger .icon path {
	fill: #155dee
}

.site-header__hamburger:hover .icon path {
	fill: #55b8e5
}

.site-header__container {
	align-items: center;
	display: flex;
	justify-content: space-between
}

.site-header__logo {
	align-items: center;
	display: flex;
	/*gap: 12px*/ column-gap: 5px; gap:5px;
}

.site-header__logo-image {
	height: 38px
}

.site-header__logo-text {
	font-size: 26px;
	font-weight: 600
}

.site-header__menu {
	align-self: stretch;
	gap: 10px;
	position: relative
}

.site-header__menu,
.site-header__menu-item {
	align-items: stretch;
	display: flex
}

.site-header__menu-link:not(.btn) {
	align-items: center;
	display: flex;
	padding: 0 6px
}

.site-header__menu-link.btn {
	align-self: center;
	margin-left: 6px
}

.site-header__menu-indicator {
	background: #155dee;
	bottom: 0;
	height: 2px;
	position: absolute;
	transition: all .3s ease
}

.site-header__mobile-menu {
	display: flex;
	flex-flow: column;
	gap: 16px;
	padding: 24px
}

.site-header__mobile-link:not(.btn) {
	border-radius: 4px;
	color: #040404;
	display: block;
	padding: 12px;
	text-decoration: none;
	transition: background .3s ease;
	width: 100%
}

.site-header__mobile-link:not(.btn):hover {
	background: #eaeaea
}

@media (min-width:62em) {
	.site-header__menu-link:not(.btn) {
		font-size: 16px
	}
}

@media (min-width:75em) {
	.site-header__logo-image {
		/*height: 58px*/
		height: 36px;
	}
	.site-header__logo-text {
		/*font-size: 38px*/
		font-size: 26px;
	}
}


/*******************************/

.hero-banner {
	align-items: center;
	display: flex;
	min-height: 50vh;
	padding: 62px 0;
	position: relative;
	width: 100%
}

.hero-banner--has-decoration {
	padding-bottom: 10.5vw
}

.hero-banner--has-overlay:after {
	background: rgba(0, 0, 0, .5);
	background: linear-gradient(90deg, #000, transparent);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1
}

.hero-banner--full {
	min-height: 100dvh
}

.hero-banner__image {
	height: 100%;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0
}

.hero-banner__container {
	color: #fff;
	z-index: 4
}
.hero-banner__container a{
	color: inherit;
}
.hero-banner__container--has-extra {
	display: grid
}

.hero-banner__content {
	margin: 0 auto;
	max-width: 440px;
	padding: 48px 0;
	/*text-align: center*/
}

.hero-banner__title {
	font-size: 36px;
	font-weight: 300
}

.hero-banner__subtitle {
	margin-bottom: 24px
}

.hero-banner__form {
	margin: 0 auto;
	max-width: 310px
}

.hero-banner__form input[type=text] {
	height: 48px;
	padding: 16px
}

.hero-banner__button {
	margin: 0 auto
}

.hero-banner__decoration {
	bottom: 0;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 2
}

@media (min-width:48em) {
	.hero-banner__content {
		margin: 0;
		max-width: 600px;
		text-align: left
	}
	.hero-banner__title {
		font-size: 60px; 
	}
	.hero-banner__subtitle {
		font-size: 18px
	}
	.hero-banner__button,
	.hero-banner__form {
		margin: 0
	}
}

@media (min-width:62em) {
	.hero-banner {
		padding: 82px 0
	}
	.hero-banner--has-decoration {
		padding-bottom: 10.5vw
	}
	.hero-banner__container--has-extra {
		align-items: center;
		grid-template-columns: auto 1fr
	}
	.hero-banner__content {
		padding: 48px
	}
	.hero-banner__form {
		max-width: 410px
	}
}


/*******************************/

.accordion-with-image {
	padding: 48px 0
}

.accordion-with-image__container {
	align-items: center;
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr
}

.accordion-with-image__subtitle {
	font-size: 16px;
	line-height: 1;
	margin-bottom: 12px
}

.accordion-with-image__title {
	font-size: 26px;
	font-weight: 300;
	line-height: 1.25
}

.accordion-with-image__content {
	margin-bottom: 24px
}

.accordion-with-image__accordion-action {
	align-items: flex-start;
	display: grid;
	gap: 16px;
	grid-template-columns: auto 24px;
	text-align: left
}

.accordion-with-image__accordion-action .icon {
	margin: 0;
	transition: transform .3s ease
}
.accordion-with-image__accordion dt.open .icon,
.accordion-with-image__accordion-action .icon.open {
	transform: rotate(180deg);
	transform-origin: center
}

.accordion-with-image__accordion-title {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.25;
	margin: 0
}

.accordion-with-image__accordion-content {
	line-height: 1.25;
	margin: 16px 0; font-size: 14px;
}

.accordion-with-image__accordion dt {
	padding-top: 20px
}
.accordion-with-image__accordion dt + dd{
	display: none;
}
.accordion-with-image__accordion dt:first-child {
	padding-top: 0
}
.accordion-with-image__accordion dt.open{
	
}
.accordion-with-image__accordion dt.open + dd{
	display: block !important;
}
.accordion-with-image__btn {
	margin-top: 34px;
	width: -moz-fit-content;
	width: fit-content
}

.accordion-with-image__image-wrapper {
	align-items: center;
	display: flex;
	justify-content: center
}

@media (min-width:48em) {
	.accordion-with-image__content {
		font-size: 18px
	}
}

@media (min-width:62em) {
	.accordion-with-image {
		padding: 80px 0
	}
	.accordion-with-image__container {
		grid-template-columns: repeat(2, 1fr)
	}
	.accordion-with-image__title {
		font-size: 22px
	}
}


/*******************************/

.value-propositions {
	background-color: #eff5fb;
	background-position: bottom;
	background-repeat: no-repeat;
	padding: 48px 0;
	position: relative;
	text-align: center
}

.value-propositions__container {
	position: relative;
	z-index: 1
}

.value-propositions__subtitle {
	color: #155dee;
	font-size: 16px;
	line-height: 1.25;
	margin-bottom: 6px
}

.value-propositions__header {
	font-size: 18px;
	line-height: 1.25;
	margin: 0 auto 48px;
	max-width: 900px
}

.value-propositions__props {
	display: grid;
	gap: 24px;
	grid-template-columns: 1fr
}

.value-propositions__prop {
	background: #fff;
	border-radius: 4px;
	margin-top: 66px;
	padding: 0 24px 48px;
	position: relative
}

.value-propositions__image {
	height: 132px;
	margin-bottom: 12px;
	margin-top: -66px;
	width: 152px
}

.value-propositions__title {
	color: #040404;
	font-size: 18px;
	margin-bottom: 10px
}

.value-propositions__content {
	color: #595959
}

.value-propositions__btn {
	margin: 48px auto 0;
	width: -moz-fit-content;
	width: fit-content
}

.value-propositions:after {
	background: linear-gradient(0deg, #eff5fb 20%, rgba(239, 245, 251, 0));
	bottom: 0;
	content: "";
	height: 48px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 0
}

@media (min-width:36em) {
	.value-propositions__props {
		grid-template-columns: repeat(2, 1fr)
	}
}

@media (min-width:62em) {
	.value-propositions {
		padding: 80px 0
	}
	.value-propositions:after {
		height: 96px
	}
	.value-propositions__subtitle {
		font-size: 22px
	}
	.value-propositions__header {
		font-size: 26px
	}
	.value-propositions__props {
		grid-template-columns: repeat(4, 1fr)
	}
}


/*******************************/

.content-with-image {
	overflow: hidden;
	padding: 48px 0
}

.content-with-image--right .content-with-image__decoration {
	right: -190px
}

.content-with-image--left .content-with-image__image-wrapper {
	order: -1
}

.content-with-image--left .content-with-image__decoration {
	left: -190px
}

.content-with-image__container {
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr
}

.content-with-image__content-wrapper {
	display: flex;
	flex-flow: column;
	justify-content: center
}

.content-with-image__subtitle {
	color: #155dee;
	font-size: 18px;
	font-weight: 300;
	line-height: 1;
	margin-bottom: 6px
}

.content-with-image__title {
	font-size: 22px;
	font-weight: 300
}

.content-with-image__content+.content-with-image__content {
	margin-top: 16px
}

.content-with-image__image-wrapper {
	align-items: center;
	display: flex;
	justify-content: center;
	position: relative
}

.content-with-image__image {
	border-radius: 42px;
	z-index: 1
}

.content-with-image__decoration {
	border-radius: 42px;
	display: none;
	max-height: calc(100% + 48px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%)
}

@media (min-width:62em) {
	.content-with-image {
		padding: 80px 0
	}
	.content-with-image__container {
		grid-template-columns: repeat(2, 1fr)
	}
	.content-with-image__image {
		padding: 24px 0
	}
	.content-with-image__subtitle {
		font-size: 22px
	}
	.content-with-image__title {
		font-size: 38px
	}
	.content-with-image__decoration {
		display: block
	}
}


/*******************************/

.section-connector {
	margin-left: auto;
	margin-right: auto;
	max-width: 80%;
	position: relative;
	width: 280px
}

.section-connector--top {
	margin-top: -48px
}

.section-connector--bottom {
	margin-bottom: -48px
}

.section-connector:after,
.section-connector:before {
	content: "";
	height: 96px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 1
}

.section-connector:before {
	background: linear-gradient(0deg, #fff 25%, hsla(0, 0%, 100%, 0));
	bottom: 0
}

.section-connector:after {
	background: linear-gradient(180deg, #fff 25%, hsla(0, 0%, 100%, 0));
	top: 0
}

.section-connector__image {
	z-index: 0
}

.section-connector__image--alt {
	transform: scaleX(-1)
}

@media (min-width:62em) {
	.section-connector {
		width: 360px
	}
	.section-connector--top {
		margin-top: -80px
	}
	.section-connector--bottom {
		margin-bottom: -80px
	}
}


/*******************************/

.upsell-grid {
	padding: 48px 0
}

.upsell-grid__list {
	display: grid;
	gap: 24px;
	grid-template-columns: 1fr
}

.upsell-grid__item {
	border: 1px solid #155dee;
	border-radius: 12px;
	padding: 24px
}

.upsell-grid__icon {
	color: #155dee;
	height: 48px;
	margin-bottom: 20px;
	width: 48px
}

.upsell-grid__title {
	color: #040404;
	margin-bottom: 10px
}

.upsell-grid__content {
	color: #595959
}

@media (min-width:48em) {
	.upsell-grid__list {
		grid-template-columns: repeat(2, 1fr)
	}
}

@media (min-width:62em) {
	.upsell-grid {
		padding: 80px 0
	}
	.upsell-grid__list {
		grid-template-columns: repeat(3, 1fr)
	}
	.upsell-grid__list--4 {
		grid-template-columns: repeat(2, 1fr)
	}
	.upsell-grid__item {
		padding: 36px
	}
}


/*******************************/

.review-carousel {
	padding: 48px 0
}

.review-carousel .swiper-slide {
	height: auto
}

.review-carousel__container {
	align-items: center;
	display: grid;
	gap: 48px;
	grid-template-columns: 100%;
	overflow: hidden
}

.review-carousel__title {
	font-size: 22px;
	font-weight: 300;
	line-height: 1.25
}

.review-carousel__review {
	height: 100%;
	padding-bottom: 20px;
	position: relative
}

.review-carousel__review:after {
	bottom: 20px;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	content: "";
	height: 50%;
	left: 5%;
	position: absolute;
	width: 90%;
	z-index: 0
}

.review-carousel__review-wrapper {
	background: #fff;
	border: 1px solid #eaeaea;
	border-radius: 12px;
	display: flex;
	flex-flow: column;
	height: 100%;
	padding: 24px;
	position: relative;
	z-index: 1
}

.review-carousel__review-icon {
	color: #155dee;
	height: 40px;
	margin-bottom: 10px;
	width: 40px
}

.review-carousel__review-content {
	color: #595959;
	line-height: 1.55;
	margin-bottom: 16px;
	font-size: 14px;
}

.review-carousel__review-name {
	color: #040404;
	font-size: 20px;
	margin-bottom: 4px;
	margin-top: auto
}

.review-carousel__review-role {
	color: #040404;
	font-size: 16px;
	font-weight: 300;
	margin-bottom: 6px
}

.review-carousel__review-rating {
	color: #fde724;
	display: flex;
	flex-flow: row;
	gap: 2px
}

.review-carousel__review-rating .icon {
	height: 18px;
	width: 18px
}

.review-carousel .swiper-pagination {
	padding-top: 16px;
	position: relative
}

.review-carousel .swiper-pagination-bullet-active {
	background: #155dee
}

@media (min-width:62em) {
	.review-carousel {
		padding: 80px 0
	}
	.review-carousel__container {
		grid-template-columns: 300px calc(100% - 348px)
	}
	.review-carousel__title {
		font-size: 38px
	}
}


/*******************************/

.site-footer {
	margin-top: auto
}

.site-footer--has-banner .site-footer__footer-container.container {
	padding-bottom: 48px;
	padding-top: 72px
}

.site-footer__banner {
	color: #fff;
	position: relative;
	z-index: 1
}

.site-footer__banner,
.site-footer__banner.container {
	margin-bottom: -24px
}

.site-footer__banner-wrapper {
	align-items: center;
	text-align: center;
	background: #155dee;
	background: linear-gradient(90deg, #155dee, #004eea);
	border-radius: 32px;
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr;
	min-height: 240px;
	overflow: hidden;
	padding: 36px;
	position: relative
}

.site-footer__banner-wrapper:before {
	background-image: url(../images/tech_squares.svg);
	/*background: #155dee;*/
	background-position: 0;
	background-repeat: no-repeat;
	content: "";
	height: 100%;
	left: 0;
	opacity: .2;
	position: absolute;
	top: 0;
	width: 100%
}

.site-footer__banner-content,
.site-footer__banner-image {
	position: relative;
	z-index: 1
}

.site-footer__banner-title {
	font-size: 22px;
	font-weight: 300
}
.site-footer__banner-content{
	font-size: 14px;
}
.site-footer__banner-btn {
	margin-top: 24px;
	display: inline-block;
}

.site-footer__footer {
	background: #eff4ff;
	position: relative;
	z-index: 0
}

.site-footer__footer,
.site-footer__footer a {
	color: #000
}

.site-footer__footer-container.container {
	display: grid;
	gap: 24px;
	padding-bottom: 48px;
	padding-top: 48px
}

.site-footer__footer-section {
	display: flex;
	flex-flow: column
}

.site-footer__footer-section--info {
	gap: 16px;
	font-size: 14px;
}

.site-footer__footer-header {
	color: #2f6ff0;
	padding-top: 16px
}

.site-footer__footer-linklist {
	display: flex;
	flex-flow: column;
	gap: 10px;
	font-size: 16px;
}

.site-footer__footer-linklist a {
	font-size: 16px;
	text-decoration: none
}

.site-footer__footer-linklist a:hover {
	color: #155dee
}

.site-footer__footer-socials {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	row-gap: 5px;
	width: 170px
}

.site-footer__logo {
	align-items: center;
	display: flex;
	/*gap: 12px;*/ column-gap: 5px; gap:5px;
	margin-bottom: 12px;
	text-decoration: none
}

.site-footer__logo-image {
	height: 38px
}

.site-footer__logo-text {
	font-size: 26px;
	font-weight: 600
}

@media (min-width:62em) {
	.site-footer--has-banner .site-footer__footer-container.container {
		padding-bottom: 80px;
		padding-top: 200px
	}
	.site-footer__footer-container.container {
		gap: 48px;
		grid-template-columns: repeat(4, 1fr);
		padding-bottom: 80px;
		padding-top: 80px
	}
	.site-footer__footer-header {
		padding-top: 0
	}
	.site-footer__banner,
	.site-footer__banner.container {
		margin-bottom: -120px
	}
	.site-footer__banner-wrapper {
		/*grid-template-columns: repeat(2, 1fr);*/
		/*padding: 48px*/
	}
	.site-footer__banner-title {
		font-size: 38px
	}
	.site-footer__logo-image {
		/*height: 58px*/ height: 36px;
	}
	.site-footer__logo-text {
		font-size: 28px
	}
}


/*******************************/

.get-domain__overlay-wrapper {
	border-radius: 20px;
	overflow: hidden
}

.get-domain__wrapper {
	padding: 4rem 24px
}

.get-domain__wrapper:before {
	background: url(../images/popup-decoration-top-left_lhrfoy.jpg);
	background-position: 0 0;
	background-size: cover;
	content: "";
	height: 100%;
	left: 0;
	opacity: .2;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1
}

.get-domain__header {
	margin-bottom: 24px;
	text-align: center
}

.get-domain__logo-wrapper {
	background: #fff;
	background: linear-gradient(0deg, #fff, #eaeaea);
	border: 4px solid #fff;
	border-radius: 100%;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .12);
	display: inline-block;
	margin-bottom: 12px;
	padding: 14px
}

.get-domain__logo {
	display: block;
	width: 52px
}

.get-domain__title {
	font-size: 22px;
	margin: 0
}

.get-domain__site-name {
	color: #55b8e5
}

.get-domain__body {
	position: relative;
	text-align: center
}

.get-domain__body img {
	display: none
}

.get-domain__list {
	display: flex;
	flex-flow: column;
	font-weight: 700;
	gap: 12px;
	line-height: 1.4;
	margin: 0 auto 24px;
	width: -moz-fit-content;
	width: fit-content
}

.get-domain__list li {
	align-items: flex-start;
	display: flex;
	gap: 8px;
	text-align: left
}

.get-domain__list li svg {
	color: #55b8e5;
	width: 34px
}

.get-domain__button {
	margin: 0 auto
}

.get-domain__button--secondary {
	margin-top: 14px
}

@media (min-width:36em) {
	.get-domain__header {
		align-items: center;
		display: flex;
		gap: 12px;
		margin-bottom: 24px;
		text-align: left
	}
	.get-domain__logo-wrapper {
		margin: 0
	}
	.get-domain__title {
		font-size: 26px
	}
}


/*******************************/

.overlay {
	position: relative;
	z-index: 16
}

.overlay__header {
	align-items: center;
	background: #f9f9f9;
	border-bottom: 1px solid #eaeaea;
	display: flex
}

.overlay__header--modal {
	border-radius: 4px 4px 0 0
}

.overlay__wrapper {
	background: #fff;
	display: flex;
	flex-flow: column;
	position: fixed;
	z-index: 2
}

.overlay__wrapper--modal {
	border-radius: 4px;
	left: 50%;
	max-height: 75vh;
	max-width: 94%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 540px
}

.overlay__wrapper--drawer-left,
.overlay__wrapper--drawer-right {
	height: 100dvh;
	max-width: 94%;
	/*min-width: 288px;*/
	min-width: 200px;
	top: 0; bottom: 0;
}

.overlay__wrapper--drawer-left {
	left: 0
}

.overlay__wrapper--drawer-right {
	right: 0
}

.overlay__wrapper--drawer-bottom {
	bottom: 0;
	left: 0;
	max-height: 95dvh;
	min-height: 200px;
	width: 100%
}

.overlay__content {
	flex-grow: 1;
	overflow: auto
}

.overlay__content--modal {
	min-height: 33vh
}

.overlay__actions {
	align-items: center;
	display: flex;
	flex-flow: row wrap;
	gap: 8px;
	justify-content: center;
	margin-top: 24px
}

.overlay__actions a,
.overlay__actions button {
	width: 100%
}

.overlay__title {
	display: block;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	font-weight: 600;
	overflow: hidden;
	padding: 0 14px;
	text-overflow: ellipsis;
	white-space: pre
}

.overlay__close {
	align-items: center;
	background-color: transparent;
	border: 0;
	box-shadow: none;
	color: #595959;
	cursor: pointer;
	display: flex;
	font-size: 12px;
	font-weight: 600;
	gap: 4px;
	height: auto;
	margin-left: auto;
	padding: 10px 14px;
	text-shadow: none
}

.overlay__close:hover {
	color: #040404
}

.overlay__close .icon {
	width: 18px
}

.overlay__backdrop {
	background: rgba(0, 0, 0, .33);
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 1
}

.overlay__backdrop--hidden {
	background: transparent
}

@media (min-width:36em) {
	.overlay__actions a,
	.overlay__actions button {
		width: auto
	}
}

@media (min-width:62em) {
	.overlay__wrapper--drawer-left,
	.overlay__wrapper--drawer-right {
		max-width: 50%
	}
}

@media (min-width:87.5em) {
	.overlay__wrapper {
		max-width: 1500px
	}
}


/*contact-form*/

.page.contact form {
	background-color: rgba(90, 200, 250, .3);
	margin: 0 auto;
	max-width: 600px;
	min-width: 325px;
	padding: 50px
}

.contact-form {
	padding: 10px
}

.contact-form__title {
	font-size: 18px;
	margin-bottom: 2px;
	text-align: center
}

.contact-form__content {
	font-size: 14px;
	margin-bottom: 0;
	text-align: center
}

.contact-form__link {
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: center
}

.contact-form__form {
	display: flex;
	flex-flow: row wrap;
	row-gap: 0
}

.contact-form .form-control {
	flex-grow: 1
}

.contact-form input,
.contact-form textarea {
	width: 100%
}

.contact-form select:invalid {
	color: #777
}

.contact-form__message {
	margin-top: 10px
}

@media (min-width:62em) {
	.contact-form__title {
		font-size: 22px
	}
}


/**/

.info-container {
	margin: 20px auto 80px;
}

.intro-content {
	padding: 48px 0;
	text-align: center
}

.intro-content__subtitle {
	color: #155dee;
	font-size: 18px;
	font-weight: 300;
	line-height: 1;
	margin-bottom: 6px
}

.intro-content__title {
	font-size: 22px;
	font-weight: 300
}

.intro-content__content+.intro-content__content {
	margin-top: 24px
}

@media (min-width:62em) {
	.intro-content {
		padding: 80px 0
	}
	.intro-content__subtitle {
		font-size: 22px
	}
	.intro-content__title {
		font-size: 38px
	}
}

.content-well {
	background-color: #d9e8f9;
	background-size: cover;
	padding: 48px 0;
	text-align: center
}

.content-well__content+.content-well__content {
	margin-top: 16px
}

.content-well__section+.content-well__section {
	margin-top: 48px
}

.content-well__button {
	margin: 24px auto 0
}

@media (min-width:62em) {
	.content-well {
		padding: 80px 0
	}
	.content-well__title {
		font-size: 38px
	}
}

.pricing-grid {
	background-position: bottom;
	background-repeat: no-repeat;
	padding: 48px 0;
	position: relative;
	text-align: center
}

.pricing-grid:after {
	background: linear-gradient(0deg, #fff 20%, hsla(0, 0%, 100%, 0));
	bottom: 0;
	content: "";
	height: 96px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 0
}

.pricing-grid__title {
	font-size: 22px;
	padding-bottom: 48px;
	font-weight: 300
}

.pricing-grid__actions {
	align-items: center;
	display: flex;
	flex-flow: row;
	gap: 20px;
	justify-content: center;
	padding-bottom: 48px;
	padding-top: 16px
}

.pricing-grid__grid {
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr
}

.pricing-grid__chart {
	margin: 0 auto;
	max-width: 440px;
	position: relative;
	width: 100%
}

.pricing-grid__chart:after {
	bottom: 0;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	content: "";
	height: 50%;
	left: 5%;
	position: absolute;
	width: 90%;
	z-index: 0
}

.pricing-grid__chart-wrapper {
	background: #fff;
	border: 1px solid #eaeaea;
	border-radius: 12px;
	height: 100%;
	overflow: hidden;
	padding: 24px;
	position: relative;
	z-index: 1
}

.pricing-grid__tier {
	background: #01233e;
	color: #fff;
	margin: -24px -24px 0;
	padding: 24px 24px 48px;
	position: relative
}

.pricing-grid__decoration {
	bottom: 0;
	left: 0;
	position: absolute;
	width: 100%
}

.pricing-grid__price {
	color: #155dee;
	padding: 14px 0
}

.pricing-grid__points {
	display: flex;
	flex-flow: column;
	gap: 14px
}

.pricing-grid__point {
	line-height: 1.55
}

.pricing-grid__button {
	margin: 24px auto 0
}

@media (min-width:62em) {
	.pricing-grid {
		padding: 80px 0
	}
	.pricing-grid__title {
		font-size: 38px
	}
	.pricing-grid__grid {
		grid-template-columns: repeat(3, 1fr)
	}
}

.value-propositions {
	background-color: #eff5fb;
	background-position: bottom;
	background-repeat: no-repeat;
	padding: 48px 0;
	position: relative;
	text-align: center
}

.value-propositions__container {
	position: relative;
	z-index: 1
}

.value-propositions__subtitle {
	color: #155dee;
	font-size: 16px;
	line-height: 1.25;
	margin-bottom: 6px
}

.value-propositions__header {
	font-size: 18px;
	line-height: 1.25;
	margin: 0 auto 48px;
	max-width: 900px
}

.value-propositions__props {
	display: grid;
	gap: 24px;
	grid-template-columns: 1fr
}

.value-propositions__prop {
	background: #fff;
	border-radius: 4px;
	margin-top: 66px;
	padding: 0 24px 48px;
	position: relative
}

.value-propositions__image {
	height: 132px;
	margin-bottom: 12px;
	margin-top: -66px;
	width: 152px
}

.value-propositions__title {
	color: #040404;
	font-size: 18px;
	margin-bottom: 10px
}

.value-propositions__content {
	color: #595959;
	font-size: 14px;
}

.value-propositions__btn {
	margin: 48px auto 0;
	width: -moz-fit-content;
	width: fit-content
}

.value-propositions:after {
	background: linear-gradient(0deg, #eff5fb 20%, rgba(239, 245, 251, 0));
	bottom: 0;
	content: "";
	height: 48px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 0
}

@media (min-width:36em) {
	.value-propositions__props {
		grid-template-columns: repeat(2, 1fr)
	}
}

@media (min-width:62em) {
	.value-propositions {
		padding: 80px 0
	}
	.value-propositions:after {
		height: 96px
	}
	.value-propositions__subtitle {
		font-size: 22px
	}
	.value-propositions__header {
		font-size: 26px
	}
	.value-propositions__props {
		grid-template-columns: repeat(4, 1fr)
	}
}

.content-with-image {
	overflow: hidden;
	padding: 48px 0
}

.content-with-image--right .content-with-image__decoration {
	right: -190px
}

.content-with-image--left .content-with-image__image-wrapper {
	order: -1
}

.content-with-image--left .content-with-image__decoration {
	left: -190px
}

.content-with-image__container {
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr
}

.content-with-image__content-wrapper {
	display: flex;
	flex-flow: column;
	justify-content: center
}

.content-with-image__subtitle {
	color: #155dee;
	font-size: 18px;
	font-weight: 300;
	line-height: 1;
	margin-bottom: 6px
}

.content-with-image__title {
	font-size: 22px;
	font-weight: 300
}

.content-with-image__content+.content-with-image__content {
	margin-top: 16px
}

.content-with-image__image-wrapper {
	align-items: center;
	display: flex;
	justify-content: center;
	position: relative
}

.content-with-image__image {
	border-radius: 42px;
	z-index: 1
}

.content-with-image__decoration {
	border-radius: 42px;
	display: none;
	max-height: calc(100% + 48px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%)
}

@media (min-width:62em) {
	.content-with-image {
		padding: 80px 0
	}
	.content-with-image__container {
		grid-template-columns: repeat(2, 1fr)
	}
	.content-with-image__image {
		padding: 24px 0
	}
	.content-with-image__subtitle {
		font-size: 22px
	}
	.content-with-image__title {
		font-size: 38px
	}
	.content-with-image__decoration {
		display: block
	}
}

.section-connector {
	margin-left: auto;
	margin-right: auto;
	max-width: 80%;
	position: relative;
	width: 280px
}

.section-connector--top {
	margin-top: -48px
}

.section-connector--bottom {
	margin-bottom: -48px
}

.section-connector:after,
.section-connector:before {
	content: "";
	height: 96px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 1
}

.section-connector:before {
	background: linear-gradient(0deg, #fff 25%, hsla(0, 0%, 100%, 0));
	bottom: 0
}

.section-connector:after {
	background: linear-gradient(180deg, #fff 25%, hsla(0, 0%, 100%, 0));
	top: 0
}

.section-connector__image {
	z-index: 0
}

.section-connector__image--alt {
	transform: scaleX(-1)
}

@media (min-width:62em) {
	.section-connector {
		width: 360px
	}
	.section-connector--top {
		margin-top: -80px
	}
	.section-connector--bottom {
		margin-bottom: -80px
	}
}

.upsell-grid {
	padding: 48px 0
}

.upsell-grid__list {
	display: grid;
	gap: 24px;
	grid-template-columns: 1fr
}

.upsell-grid__item {
	border: 1px solid #155dee;
	border-radius: 12px;
	padding: 24px
}

.upsell-grid__icon {
	color: #155dee;
	height: 48px;
	margin-bottom: 20px;
	width: 48px
}

.upsell-grid__title {
	color: #040404;
	margin-bottom: 10px
}

.upsell-grid__content {
	color: #595959; font-size: 14px;
}

@media (min-width:48em) {
	.upsell-grid__list {
		grid-template-columns: repeat(2, 1fr)
	}
}

@media (min-width:62em) {
	.upsell-grid {
		padding: 80px 0
	}
	.upsell-grid__list {
		grid-template-columns: repeat(3, 1fr)
	}
	.upsell-grid__list--4 {
		grid-template-columns: repeat(2, 1fr)
	}
	.upsell-grid__item {
		padding: 36px
	}
}

.page--blog-post .blog-post__back-link {
	align-items: center;
	display: flex;
	font-size: 14px;
	margin-bottom: 14px;
	text-decoration: none
}

.page--blog-post .blog-post__back-link:hover {
	text-decoration: underline
}

.page--blog-post .blog-post__container {
	margin-bottom: 24px;
	margin-top: 24px;
	max-width: 900px
}

.page--blog-post .blog-post__content>* {
	margin-bottom: 18px
}

.page--blog-post .blog-post__content img {
	border-radius: 4px
}

.page--blog-post .blog-post__content ul {
	line-height: 1.55;
	list-style: disc;
	margin-left: 24px
}

.page--blog-post .blog-post__content blockquote {
	border-left: 4px solid #eaeaea;
	display: flex;
	flex-flow: column;
	gap: 20px;
	padding: 24px
}

.page--blog-post .blog-post__content blockquote p {
	font-size: 18px;
	font-style: italic;
	font-weight: 600
}

.page--blog-post .blog-post__content .wp-block-image {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	padding-bottom: 24px;
	padding-top: 24px;
	position: relative;
	width: 100%
}

.page--blog-post .blog-post__content .wp-block-image img {
	display: block;
	height: auto;
	width: auto
}

.page--blog-post .blog-post__content .wp-block-image .wp-element-caption {
	background: #040404;
	background: linear-gradient(0deg, #040404, rgba(4, 4, 4, 0));
	bottom: 0;
	color: #fff;
	font-size: 14px;
	left: 0;
	padding: 14px;
	position: absolute;
	width: 100%
}

.page--blog-post .blog-post__content .wp-block-gallery {
	display: grid;
	gap: 14px;
	grid-template-columns: 1fr
}

.page--blog-post .blog-post__content .wp-block-gallery .wp-block-image {
	padding-bottom: 0;
	padding-top: 0
}

.page--blog-post .blog-post__content .wp-block-heading {
	padding-top: 24px
}

.page--blog-post .blog-post__cta {
	display: flex;
	justify-content: center;
	padding-top: 14px
}

@media (min-width:36em) {
	.page--blog-post .blog-post__container {
		margin-bottom: 96px;
		margin-top: 96px
	}
	.page--blog-post .blog-post__content .wp-block-gallery {
		grid-template-columns: repeat(3, 1fr)
	}
	.page--blog-post .blog-post__content .wp-block-heading {
		padding-top: 48px
	}
}

.info-container {
	margin: 20px auto 80px
}

.info-container h4 {
	margin: 24px 0 8px; font-size: 18px;
}

.info-container ul {
	list-style-type: circle
}

.info-container li {
	margin-left: 20px;
	font-size: 16px;
}

.info-container h2 {
	font-weight: 400
}

.info-container h2 span {
	font-weight: 700
}

.row {
	display: flex;
	flex-wrap: wrap
}

.col-6 {
	flex: 0 0 auto;
	width: 50%
}

.col-12 {
	flex: 0 0 auto;
	width: 100%
}

div.doc-container {
	padding-top: 2rem
}

.doc-container h1 {
	line-height: 1.2
}

.doc-container .text-primary {
	color: #2937f0
}

.doc-container p {
	font-size: 2rem;
	line-height: 2.5rem;
	margin-bottom: 2rem
}

.doc-container .mt-5 {
	margin-bottom: 18px;
	margin-top: 50px
}

.doc-container img {
	border: 2px solid #ede;
	border-radius: 5px
}

@media (max-width:600px) {
	.col-6 {
		width: 100%
	}
}

.blog__container {
	margin-bottom: 24px;
	margin-top: 24px
}

.blog__posts {
	align-content: start
}

.blog__post {
	margin-bottom: 48px
}

.blog__post-image {
	border-radius: 4px;
	margin-bottom: 16px;
	width: 100%
}

.blog__post-title {
	font-size: 20px;
	margin: 0 0 6px
}

.blog__post-content {
	color: #595959;
	font-size: 14px;
	margin-bottom: 6px
}

.blog__post-link {
	font-size: 14px
}

@media (min-width:36em) {
	.blog__container {
		margin-bottom: 96px;
		margin-top: 96px
	}
	.blog__posts-wrapper {
		-moz-column-gap: 16px;
		column-gap: 16px;
		display: grid;
		row-gap: 72px
	}
	.blog__posts {
		display: grid;
		gap: 16px;
		grid-template-columns: repeat(2, 1fr);
		row-gap: 48px
	}
	.blog__post {
		margin-bottom: 0
	}
}

@media (min-width:62em) {
	.blog__posts-wrapper {
		-moz-column-gap: 48px;
		column-gap: 48px
	}
}

.pagination {
	margin-top: 48px
}

.pagination {
	display: flex;
	gap: 6px;
	justify-content: flex-end
}

.wizard___en .site-content {
	align-items: center;
	display: flex;
	flex-flow: column;
	flex-grow: 1;
	justify-content: center;
	padding: 40px;
	position: relative;
	text-align: center
}

.wizard__progress {
	font-size: 14px;
	margin-bottom: 16px
}

.wizard__title {
	font-size: 26px;
	line-height: 1.25;
	max-width: 800px
}

.wizard__subtitle {
	color: #aaa;
	font-size: 14px;
	line-height: 1.25;
	margin-bottom: 24px;
	max-width: 640px
}

.wizard__back {
	left: 24px;
	position: absolute;
	top: 24px
}

.wizard__skip {
	margin-top: 16px
}

.wizard__form {
	max-width: 100%;
	width: 320px
}

.wizard__color-grid {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 34px;
	max-width: 100%;
	width: 300px
}

.wizard__color-grid .btn {
	margin: 0 auto
}

.wizard__phases {
	height: 126px;
	position: relative;
	width: 230px
}

.wizard__phases:after,
.wizard__phases:before {
	content: "";
	height: 42px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 2
}

.wizard__phases:before {
	background: linear-gradient(0deg, hsla(0, 0%, 100%, 0), #fff);
	border-bottom: 1px solid #eaeaea;
	top: 0
}

.wizard__phases:after {
	background: linear-gradient(0deg, #fff, hsla(0, 0%, 100%, 0));
	border-top: 1px solid #eaeaea;
	bottom: 0
}

.wizard__phases .swiper-slide {
	align-items: center;
	display: flex;
	justify-content: center;
	transition: all .3s ease
}

.wizard__phases .swiper-slide-next,
.wizard__phases .swiper-slide-prev {
	font-size: 16px;
	opacity: .5
}

@media (min-width:62em) {
	.wizard__back {
		left: 40px;
		top: 40px
	}
	.wizard__title {
		font-size: 38px
	}
	.wizard__subtitle {
		font-size: 18px;
		margin-bottom: 34px
	}
}

.login-popup__overlay-content {
	min-height: 0;
	padding: 24px
}

.pac-container {
	border: 1px solid #cfcfcf;
	border-radius: 4px;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	left: 50%!important;
	margin-top: 10px;
	max-width: 80%;
	transform: translateX(-50%);
	width: -moz-fit-content!important;
	width: fit-content!important
}

.pac-container:after {
	content: none
}

.pac-item:first-child {
	border-top: 0
}

.chat-bubble {
	bottom: 0;
	padding: 20px;
	position: fixed;
	right: 0;
	z-index: 8
}

.chat-bubble__button {
	align-items: center;
	background: #fde724;
	border: 2px solid #f2de27;
	border-radius: 100px;
	box-shadow: 0 4px 12px rgba(4, 4, 4, .14);
	color: #040404;
	cursor: pointer;
	display: flex;
	height: 60px;
	justify-content: center;
	transition: all .3s ease;
	width: 60px
}

.chat-bubble__button:hover {
	translate: 0 -10px
}

.chat-bubble__button .icon {
	height: 32px;
	width: 32px
}

.overlay--mobile-menu{
	display: none;
}

.flinks{
	padding-bottom: 60px; font-size: 14px;
}
.flinks h2{
	display: none;
}


/* 表格默认样式 */
table {
  /* 表格宽度自适应容器 */
  width: 100%;
  /* 合并边框 */
  border-collapse: collapse;
  /* 表格外部边框 */
  border: 1px solid #e0e0e0;
  /* 表格阴影增加立体感 */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  /* 圆角边框 */
  border-radius: 6px;
  /* 隐藏溢出的边框角 */
  overflow: hidden;
  /* 字体设置 */
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  font-size: 14px;
  color: #333;
}

/* 表头样式 */
table thead {
  background-color: #f8f9fa;
}

table th {
  /* 表头边框 */
  border: 1px solid #e0e0e0;
  padding: 12px 15px;
  /* 文字居中 */
  text-align: left;
  /* 表头文字加粗 */
  font-weight: 600;
  /* 表头文字颜色 */
  color: #2c3e50;
}

/* 表格内容单元格样式 */
table td {
  border: 1px solid #e0e0e0;
  padding: 12px 15px;
  /* 垂直居中 */
  vertical-align: middle;
}

/* 表格行交替颜色（斑马线效果） */
table tbody tr:nth-child(even) {
  background-color: #fafafa;
}

/* 行hover效果 */
table tbody tr:hover {
  background-color: #f0f7ff;
  /* 过渡动画使效果更平滑 */
  transition: background-color 0.2s ease;
}

/* 表格底部留白 */
table {
  margin-bottom: 20px;
}

/* 响应式调整（小屏幕下优化） */
@media (max-width: 768px) {
  table {
    font-size: 13px;
  }
  table th, table td {
    padding: 8px 10px;
  }
}