#breadcrumbs > span {
	display: flex;
    gap: 6px;
}

.header-menu ul.sub-menu.elementor-nav-menu--dropdown {
	padding-top: 16px;
	padding-bottom: 16px;
}

.service-btn .elementor-button-icon {
	transition: all .8s ease;
}

.service-btn:hover .elementor-button-icon,
.service-btn.active .elementor-button-icon {
    transform: rotate(-180deg);
}

.service-btn:hover .elementor-button-icon svg path,
.service-btn.active .elementor-button-icon svg path{
    fill: none !important;
    stroke: var(--e-global-color-primary);
}



.header-menu
.elementor-nav-menu
.menu-item-has-children
.sub-arrow svg {
    transform: rotate(0deg);
    transition: transform 800ms ease;
}
.header-menu
.elementor-nav-menu
.menu-item-has-children
> .elementor-item[aria-expanded="true"]
.sub-arrow svg {
    transform: rotate(180deg);
}
.header-menu
.elementor-nav-menu
.menu-item-has-children
> .elementor-item[aria-expanded="true"]
.sub-arrow svg path {
    fill: var(--e-global-color-primary) !important;
}
.header-menu
.elementor-nav-menu
a.has-submenu[aria-expanded="true"] {
    color: var(--e-global-color-primary) !important;
}

body::before {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(18, 19, 21, 0.4);
    opacity: 0;
    pointer-events: none;
    transition: opacity 300ms ease;
    z-index: 1000;
}
body:has(
  .header-menu .elementor-item[aria-expanded="true"]
)::before {
    opacity: 1;
}

.mobile-visible.menu-item a {
	color: var(--e-global-color-63c4455) !important;
}
@media (min-width: 769px) {
	.mobile-visible.menu-item {
		display: none !important;
	}
}

.vertical-menu ul.e-n-menu-heading {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.header-cta a .elementor-button-icon svg {
	transform: rotate(0deg);
    transition: transform 800ms ease;
}

.header-cta a:hover .elementor-button-icon svg {
	transform: rotate(45deg);
}

.service-card .service-card--icon svg {
	transition: all .8s ease;
}

.service-card:hover .service-card--icon svg {
    transform: rotate(45deg);
}

.social-icon .elementor-icon:hover svg path {
	fill: rgba(255, 255, 255, .6) !important;
}

.elementor-swiper-button.swiper-button-disabled {
	background-color: var(--e-global-color-8792434) !important;
	opacity: 1 !important;
}

.elementor-swiper-button.swiper-button-disabled svg path {
	stroke: var(--e-global-color-c96d1b4) !important;
}

.elementor-swiper-button svg path {
	stroke: var(--e-global-color-8b3d169) !important;
}


/* ----- Стили формы ----- */

/* .custom-form input.elementor-field {
  color: var(--e-global-color-f346fb8) !important;
} */

label.elementor-field-label {
    position: absolute;
    top: 8px;
    left: 25px;
    transition: all .8s ease;
    visibility: hidden;
    opacity: 0;
}

.elementor-field-group.visible-label .elementor-field-label,
.elementor-field-group.focus-label .elementor-field-label {
  visibility: visible;
  opacity: 1;
}

.elementor-field-group.visible-label input,
.elementor-field-group.focus-label input,
.elementor-field-group.visible-label textarea,
.elementor-field-group.focus-label textarea {
	padding-bottom: 8px !important;
    padding-top: 28px !important;
}

.elementor-field-group.visible-label input {
	background-color: #ffffff !important;
}

.custom-form button {
	transition: all .8s ease;
	width: 100%;
}

.elementor-field-type-acceptance {
	order: 1;
}

.elementor-field-group.elementor-column.elementor-field-type-submit.e-form__buttons {
    margin-bottom: 10px !important;
}

/* ----- Начало стилей чекбокса ----- */
.elementor-field-type-acceptance label.elementor-field-label.elementor-screen-only {
    display: none;
}

.elementor-field-type-acceptance input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.elementor-field-type-acceptance label {
    display: flex !important;
    align-items: center;
    position: relative;
    padding-left: 28px;
    padding-top: 2px;
	font-size: var(--e-global-typography-0822e5b-font-size) !important;
	font-weight: var(--e-global-typography-0822e5b-font-weight) !important;
	line-height: var(--e-global-typography-0822e5b-line-height) !important;
	color: var(--e-global-color-8b3d169) !important;
}
.popup-form .elementor-field-type-acceptance label {
	color: var(--e-global-color-63c4455) !important;
}
.popup-form .elementor-field-type-acceptance label a {
	color: var(--e-global-color-primary) !important;
}
.popup-form .elementor-field-type-acceptance label a:hover {
	color: var(--e-global-color-secondary) !important;
}


.elementor-field-type-acceptance label a {
	text-decoration: underline;
	color: var(--e-global-color-8b3d169) !important;
}

.elementor-field-type-acceptance label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 1.5px solid rgba(255, 255, 255, 1);
  transition: all 0.2s ease;
}

/* Hover */
.elementor-field-type-acceptance input[type="checkbox"]:hover + label::before {
  border-color: #fff;
}
.popup-form .elementor-field-type-acceptance input[type="checkbox"] + label::before {
  border-color: var(--e-global-color-primary);
}
.popup-form .elementor-field-type-acceptance input[type="checkbox"]:hover + label::before {
  border-color: var(--e-global-color-secondary);
}

/* Checked */
.elementor-field-type-acceptance input[type="checkbox"]:checked + label::before {
  background: var(--e-global-color-primary);
  border-color: #fff;
}
.popup-form .elementor-field-type-acceptance input[type="checkbox"]:checked + label::before {
  background: var(--e-global-color-primary);
  border-color: var(--e-global-color-primary);
}

/* Галочка */
.elementor-field-type-acceptance input[type="checkbox"]:checked + label::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 10px;
  transform: translateY(-50%) rotate(45deg);
  width: 5px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
}
/* ----- Конец стилей чекбокса ----- */

.main-menu-popup {
	top: 88px;
}

@media (max-width: 768px) {
	.main-menu-popup {
		top: 62px;
	}
}

/* ---------- MOBILE MENU CSS ---------- */
.mob-menu-open svg {
    overflow: visible !important;
}
.mob-menu-open svg path {
    transition: 
        transform 0.6s ease,
        opacity 0.6s ease,
        stroke-dashoffset 0.6s ease;
    transform-origin: center;
}
.mob-menu-open.active svg path:nth-child(1) {
    transform: translateY(1px) rotate(46deg);
}
.mob-menu-open.active svg path:nth-child(2) {
    opacity: 0;
}
.mob-menu-open.active svg path:nth-child(3) {
    transform: translateY(-7px) rotate(-46deg);
}
/* ----- END ------ */

/* ----- TABS ----- */

.tariff-tabs .e-n-tabs-heading {
	background: var(--e-global-color-d2a678d);
    width: fit-content;
    margin: 0 auto;
    border-radius: 16px;
    padding: 4px;
}

/* ----- END TABS ----- */

@media (max-width: 1313px) {
	.hide-bg-img {
		background-image: none !important;
	}
}

.case-title span.elementor-heading-title {
	transition: all .5s ease;
}
.case-card:hover .case-title span.elementor-heading-title {
	color: var(--e-global-color-primary);
}