@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

body {
    background: #fafafa;
    font-family: 'Roboto', sans-serif;
    color: #141414;
}

#tModalForm .overlay {
    display:none;
    position:fixed;
    background:rgba(24, 106, 229,.8);
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:100000;
    width:100%;
    height:100%
}

#tModalForm .form-box {
    margin:2px 0 15px;
    background:#fff;
    border-radius: 4px;
    padding: 30px 20px 20px 20px;
    position: absolute;
    top:-5000px;
    left:50%!important;
    width:100%;
    transform:translateX(-50%);
    max-width:1240px;
    z-index:100001
}

#tModalForm .form-box h2 {
    margin: 20px 0px;
}

#tModalForm .form-box h3 {
    margin: 20px 0px;
}

#tModalForm .form-box p {
  	margin: 10px 0px;
  	line-height: 1.5;
  	font-weight: 400;
}

#tModalForm .form-box ul {
    list-style: none;
    padding: 0;
    margin: 10px 0px;
}

#tModalForm .form-box ul li {
    padding: 5px 0px;
}

#tModalForm .form-box ul li:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
    padding: 0px 8px 0px 0px;
    font-weight: 600;
    color: #1c1c27;
}

#tModalForm .form-box *{
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    outline:0
}

#tModalForm .form-close {
    background:url(img/closed.png) no-repeat 50% 50% transparent;
    background-size:contain;
    cursor:pointer;
    position:absolute;
    right:5px;
    top:5px;
    height:48px;
    width:48px;
    z-index:1000;
}

.page__header {
    width: 100%;
    background: #fafafa;
    position: fixed;
    top: 0;
    z-index: 9999;
}

.page__slider {
    margin: 50px 0px 0px 0px;
}

.page__wrapper {
    max-width: 1440px;
    margin: 0 auto;
    padding: 20px;
}

.main__content {
    padding: 40px 0px;
}

.main__content h1 {
    text-transform: uppercase;
    display: inline-block;
}

.main__p {
    font-weight: 500;
    text-transform: uppercase;
}

.main__content h1:after {
    font-family: "Font Awesome 5 Free";
    content: "\f178";
    padding: 0px 20px;
    font-weight: 700;
    color: #004287;
}

.main__content h2 {
    text-transform: uppercase;
    display: inline-block;
}

/* .main__content__line:after {
    font-family: "Font Awesome 5 Free";
    content: "\f068";
    padding: 0px 10px;
    font-weight: 700;
    color: inherit;
} */

.main__content ul {
    list-style: none;
    margin: 0;
    padding: 0;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 20px;
}

.main__content ul li {
    padding: 5px 0px;
}

.main__content ul li:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
    padding-right: 6px;
    font-weight: 700;
    color: #a5a5a5;
}

.block {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    width: 100%;
    padding: 30px 20px;
    border-radius: 8px;
    background: #fafafa;
    border: 2px solid #f2f2f2;
    gap: 20px;
    transition: all 0.3s ease 0s;
}

.block:hover {
    border: 2px solid #004287;
    color: #141414;
}

.block h3 {
    font-weight: 400;
    color: #141414;
}

.block p {
    font-weight: 400;
    line-height: 1.5;
    color: #414141;
}

.block__wrapper img {
    width: 70px;
    height: 70px;
}

.block__wrapper {
    text-align: center;
}

.link__none {
    text-decoration: none;
}

.page__gray {
    display: block;
    background: #f1f1f1;
}

.page__news {
    /* display: flex;
    align-items: center; */
    display: block; /* вместо flex */
    width: 100%;
    overflow: hidden; /* принудительно скрываем переполнение */
}

.page__news .main__content {
    width: 100%;
    overflow: hidden; /* дополнительная защита */
}

.page__news .owl-stage-outer {
    overflow: hidden !important;
    width: 100% !important;
}

.page__news .owl-carousel {
    width: 100%;
    overflow: hidden;
}

.content__news {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}

.content__news h2 {
    font-weight: 700;
}

.content__news p {
    font-weight: 400;
    line-height: 1.5;
}

.btn__primary {
    background: #004287;
    display: inline-block;
    padding: 12px 24px;
    text-decoration: none;
    text-transform: uppercase;
    color: #fafafa;
    font-weight: 500;
    border-radius: 2px;
    transition: all 0.3s ease 0s;
}

.btn__primary:hover {
    background: #141414;
    color: #fafafa;
}

.block__news {
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}

.block__news__wrapper {
    display: block;
}

.block__news h3 {
    font-weight: 500;
}

.block__news p {
    font-weight: 300;
    line-height: 1.5;
}

.block__news__wrapper__img {
    display: block;
}

.block__news__wrapper__img img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.page__blue {
    display: block;
    background: #004287;
    opacity: 1;
    background: repeating-linear-gradient( 45deg, #003e80, #003e80 20px, #004287 20px, #004287 100px );
}

.block__software {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    width: 100%;
    padding: 30px 20px;
    border-radius: 8px;
    background: inherit;
    border: 2px solid #4c7baa;
    gap: 20px;
    transition: all 0.3s ease 0s;
    color: #fafafa;
}

.block__software:hover {
    border: 2px solid #fafafa;
    color: #fafafa;
}

.block__software:after {
    font-family: "Font Awesome 5 Free";
    content: "\f178";
    font-weight: 700;
    color: #4c7baa;
    text-align: right;
    font-size: 28px;
}

.block__software__wrapper {
    display: block;
}

.block__software h3 {
    font-weight: 500;
}

.block__software p {
    font-weight: 300;
    line-height: 1.5;
}

.block__software__wrapper img {
    width: 40px;
    height: 40px;
}

.news__read__more {
    text-decoration: none;
    color: #004287;
    font-weight: 500;
    transition: all 0.3s ease 0s;
}

.news__read__more:hover {
    color: #141414;
}

.news__read__more:after {
    font-family: "Font Awesome 5 Free";
    content: "\f178";
    padding-left: 5px;
    font-weight: 700;
    color: inherit;
    transition: all 0.3s ease 0s;
}

.slider__partner {
    display: block;
    padding: 20px;
}

.slider__partner img {
    max-inline-size: 100%;
    block-size: auto;
}

.maps {
    display: block;
    width: 100%;
}

.accordion input {
    position: absolute;
    opacity: 0;
    z-index: -1;
}

.accordion-wrapper {
    border-radius: 8px;
    overflow: hidden;
    width: 100%;
    margin:0 auto;
}

.accordion {
    width: 100%;
    color: #fafafa;
    overflow: hidden;
    margin-bottom: 4px;
}

.accordion:last-child{
    margin-bottom: 0;
}

.accordion-label {
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    padding: 16px;
    background: #004287;
    font-weight: 500;
    cursor: pointer;
    font-size: 18px;
    transition: all 0.3s ease 0s;
}

.accordion-label:hover {
    background: #003e80;
}

.accordion-label::after {
    content: "\276F";
    width: 16px;
    height: 16px;
    text-align: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.accordion-content {
    max-height: 0;
    padding: 0px 20px;
    color: #141414;
    background: #fff;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.accordion-content ul {
    margin: 0;
    color: #141414;
    font-size: 16px;
    font-weight: 400;
}

input:checked + .accordion-label {
    background: #004287;
}

input:checked + .accordion-label::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

input:checked ~ .accordion-content {
    max-height: 100vh;
    padding: 16px;
}

.page__footer {
    display: block;
    width: 100%;
    background: #f1f1f1;
  	border-bottom: 10px solid #004287;
}

.main__page__content {
    padding: 20px 0px;
}

.main__page__content h2 {
    font-weight: 500;
 	padding: 20px 0px;
	text-transform: uppercase;
}

/* .main__page__content h2:after {
    font-family: "Font Awesome 5 Free";
    content: "\f068";
    padding: 0px 10px;
    font-weight: 700;
    color: inherit;
} */

.main__page__content h3 {
    font-weight: 400;
  	padding: 20px 0px;
  	text-transform: uppercase;
}

.main__page__content > p {
    font-weight: 400;
  	line-height: 1.5;
  	padding: 8px 0px;
}

.main__page__content ul {
    list-style: none;
    margin: 0;
    padding: 20px 0px;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 20px;
}

.main__page__content ul li {
    padding: 5px 0px;
}

.main__page__content ul li:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0da";
    padding-right: 6px;
    font-weight: 700;
    color: #a5a5a5;
}

.main__page__content img {
	border-radius: 8px;
}

.main__page__content img.alignright { float: right; margin: 0 0 1em 1em;}
.main__page__content img.alignleft { float: left; margin: 0 1em 1em 0;}
.main__page__content img.aligncenter { display: block; margin-left: auto; margin-right: auto;}
.alignright { float: right;}
.alignleft { float: left;}
.aligncenter { display: block; margin-left: auto; margin-right: auto;}

.page__line__header {
    display: block;
    background: #f1f1f1;
  	margin-top: 80px;
}

.wrapper__break {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;

    gap: 20px;
  	padding: 40px 0px;
}

.wrapper__break h1 {
	padding: 0;
  	margin: 0;
  	text-transform: uppercase;
}

.wrapper__break span {
	padding: 0;
  	margin: 0;
  	color: #141414;
  	font-size: 14px;
}

.wrapper__break a {
	text-decoration: none;
  	color: #141414;
  	font-weight: 500;
}

.block__news__eng {
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}

.block__news__wrapper {
    display: block;
}

.block__news__eng h3 {
    font-weight: 400;
}

.block__news__eng p {
    font-weight: 300;
    line-height: 1.5;
}

.block__news__wrapper__img {
    width: 100%;
}

.block__news__wrapper__img img {
    display: block;
    width: 100%;
    object-fit: cover;
    height: 200px;
    border-radius: 8px;
}

form {
    display: block;
}

form br {
    display: none;
}

form label {
    display: block;
    margin: 10px 0px;
    color: #fff;
}

form input {
    display: block;
    width: 100%;
    border-radius: 3px;
    border: 1px solid #fff;
    outline: none;
    padding: 8px 8px;
    font-size: 1.0rem;
    color: #fff;
    margin: 10px 0px;
    font-weight: 500;
    background: transparent;
}

.label__white {
    display: block;
    margin: 0;
  	padding: 5px 0px;
    color: #141414;
  	font-weight: 500;
}

.input__white {
    display: block;
    width: 100%;
    border-radius: 4px;
    border: 1px solid #e2e2e2;
    outline: none;
    padding: 8px 8px;
    font-size: 1.0rem;
    color: #141414;
    margin: 0;
    font-weight: 500;
    background: transparent;
}

form textarea {
    display: block;
    width: 100%;
    border-radius: 3px;
    border: 1px solid #fff;
    outline: none;
    padding: 8px 8px;
    font-size: 1.0rem;
    color: #fff;
    margin: 10px 0px;
    font-weight: 500;
    background: transparent;
}

.submit {
    color:#004287;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    background: rgb(255, 255, 255, 1);
    padding: 15px 20px;
    border-radius: 3px;
    transition: all 0.3s ease 0s;
    border: 1px solid #fff;
    display: block;
    margin: 40px 0px 20px 0px;
    width: 100%;
}

.submit:hover {
    background: rgb(255, 255, 255, .9);;
}

select {
    display: block;
    width: 100%;
    border-radius: 3px;
    border: 1px solid #b1b1b1;
    outline: none;
    padding: 7px 8px;
    font-size: 1.0rem;
    color: #1c1c27;
    margin: 5px 0px;
    font-weight: 500;
    background: transparent;
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
    background: #00cb03;
    border-radius: 4px;
    margin: 0px 0px 10px 0px;
    padding: 10px 15px;
    font-weight: 600;
    color: #fff;
}

.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-color: #fff; /* Dark Gray 800 */
	opacity: 0.75;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	padding: 0;
	margin: 0px;
	position: relative;
}

form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: '';
	position: absolute;
	background-color: #186ae5; /* 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;
}

@media (prefers-reduced-motion: reduce) {
	.wpcf7-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

#foo {
    position: fixed;
    width: 300px;
    height: 100px;
    left: 0;
    top: 0;
    background: #e2e2e2;
}

.block__vakansii {
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
    padding: 30px 20px;
    border-radius: 8px;
    background: #fafafa;
    border: 2px solid #f2f2f2;
    gap: 20px;
    transition: all 0.3s ease 0s;
}

.block__vakansii h2 {
    font-weight: 500;
    color: #141414;
  	padding: 20px 0px;
}

.block__vakansii h3 {
  	padding: 20px 0px;
  	text-transform: uppercase;
}

/* .block__vakansii h3:after {
    font-family: "Font Awesome 5 Free";
    content: "\f068";
    padding: 0px 10px;
    font-weight: 700;
    color: inherit;
} */

.block__vakansii p {
    font-weight: 400;
    line-height: 1.5;
    color: #414141;
  	font-size: 14px;
}

.block__vakansii ul {
  	font-size: 14px;
}

.block__wrapper__vakansii {
    text-align: left;
}

.footer__bw {
    display: flex;
    justify-content: space-between;
}

.footer__wrapper {
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
    gap: 20px;
}

.footer__wrapper a {
    text-decoration: none;
    color:#737373;
    font-weight: 500;
    transition: all 0.3s ease 0s;
    text-transform: uppercase;
    font-size: 12px;
}

.footer__h3 {
    color:#141414;
    font-weight: 500;
 	text-transform: uppercase;
  	font-size: 16px;
  	padding: 5px 0px;
  	display: block;
  	border-bottom: 1px solid #b5b5b5;
  	width: 60%;
}

.footer__wrapper a:hover {
    color:#004287;
}

.footer__wrapper span {
    color:#141414;
    font-size: 12px;
    font-weight: 400;
    margin: 10px 0px;
    text-transform: uppercase;
}

@media only screen and (max-width: 1024px) {
    .footer__wrapper {
        margin: 10px 0px;
        padding: 5px;
    }

    .footer__wrapper span {
        display: none;
    }
}

.footer__icons {
    display: flex;
    flex-flow: column nowrap;
    gap: 25px;
}

.footer__icons a {
    color: #004287;
    font-size: 24px;
    transition: all 0.3s ease 0s;
}

.footer__icons a:hover {
    color: #141414;
}

.location {
    display: block;
    width: 100%;
}

.page__404 {
    display: block;
    height: 600px;
}

.wrapper__404 {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    height: 600px;
}

.wrapper__404 span {
    color:#004287;
    font-weight: 700;
}

.wrapper__404 p {
    color:#004287;
    font-weight: 600;
}

@media (max-width: 320px) {.wrapper__404 span {font-size: 24px;} .wrapper__404 p {font-size: 14px;}}
@media (max-width: 1440px) and (min-width: 321px) {.wrapper__404 span {font-size: calc(1.4rem + 3 * (100vw - 350px) / 1050);} .wrapper__404 p {font-size: calc(1.1rem + 3 * (100vw - 350px) / 1050);}}
@media (min-width: 1441px) {.wrapper__404 span {font-size: 78px;} .wrapper__404 p {font-size: 18px;}}

.block__edu {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 20px;

    border-radius: 8px;
    border: 1px solid #e2e2e2;
  	padding: 20px;
}

.block__edu h2 {
	font-weight: 500;
  	padding: 10px 0px;
    font-size: 16px!important;
}

.block__edu p {
	font-weight: 400;
  	line-height: 1.5;
  	padding: 0px 0px 10px 0px;
}

.block__edu__wrapper__between {
    display: flex;
    justify-content: space-between;
}

.block__edu__btns__between {
    display: flex;
    justify-content: space-between;
  	gap: 20px;
}

.block__edu__image img {
  width: 100%; /* Изображение на всю ширину карточки */
  height: 200px; /* Фиксированная высота для всех изображений */
  object-fit: contain; /* Обрезка изображения, чтобы оно заполнило блок */
  border-radius: 8px; /* Закругленные края */
  display: block;
  margin: 0; /* Отступы сверху и снизу */
}

.edu__product {
    color: #c4c4c4;
    font-weight: 400;
}

.edu__time {
    color: #c4c4c4;
    font-weight: 400;
}

.block__edu__wrapper {
    display: block;
}

.btn__offer {
  	text-decoration: none;
  	border-radius: 4px;
  	background: #004287;
  	color: #fafafa;
  	text-transform: uppercase;
  	display: block;
  	width: 100%;
  	text-align: center;
  	font-weight: 500;
  	padding: 12px 0px;
  	cursor: pointer;
  	transition: all 0.3s ease 0s;
  	font-size: 14px;
}

.btn__offer:hover {
  	background: #003e80;
  	color: #fafafa;
}

.btn__more {
  	text-decoration: none;
  	border-radius: 4px;
  	background: #e2e2e2;
  	color: #141414;
  	text-transform: uppercase;
  	display: block;
  	width: 100%;
  	text-align: center;
  	font-weight: 500;
  	padding: 12px 0px;
  	cursor: pointer;
  	transition: all 0.3s ease 0s;
  	font-size: 14px;
}

.btn__more:hover {
  	background: #d4d4d4;
  	color: #141414;
}

@media only screen and (max-width: 1024px) {
    .block__edu__btns__between {
       display: flex;
       flex-flow: column nowrap;
    }
}

.forn__h2 {
    display: inline-block;
  	font-size: 22px;
	font-weight: 600;
}

.btn__form {
  	text-decoration: none;
  	border-radius: 4px;
  	background: #004287;
  	color: #fafafa;
  	text-transform: uppercase;
  	display: block;
  	width: 100%;
  	text-align: center;
  	font-weight: 500;
  	padding: 12px 0px;
  	cursor: pointer;
  	transition: all 0.3s ease 0s;
  	font-size: 14px;
  	margin: 40px 0px 0px 0px;
}

.btn__form:hover {
  	background: #003e80;
  	color: #fafafa;
}

.pagination {
    text-align: center;
    margin-top: 20px;
}

.pagination button {
    padding: 8px 16px;
    margin: 0 5px;
    cursor: pointer;
    outline: none;
    border-radius: 2px;
    border: none;
}

.hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.pagination button.active {
    background-color: #004287;
    color: white;
}

.content__table {
  display: grid;
  grid-template-columns: 25% 25% 25% 25%;
  grid-template-rows: auto;
  gap: 20px;
  grid-auto-flow: row;
}

section {  
  display: block;
}

.pass-label { display: none; }

.block_lk {  
  background-color: inherit; 
  height: auto;
  width: 100%;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  margin: 25px 0px;
  padding: 18px;
  gap: 15px;
  border: 2px solid #e2e2e2;
  border-radius: 4px;
}

.block_lk_title {
  font-weight: 500;
  font-size: 22px!important;
  padding: 0;
  margin-bottom: 10px;
}

.block__lk__wrapper__line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}

.block__lk__span {
  display: block;
  padding: 4px 0px;
  font-size: 14px;
}

.block__lk__span__background {
  background-color: #f0f0f0;
  border: 1px solid #f0f0f0;
  border-radius: 4px;
  padding: 2px 10px;
}

.block__lk__wrapper__clmn {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  gap: 20px;
}

.block__lk__wrapper__clmn a {
	font-size: 14px;
    border-bottom: 1px solid #e2e2e2;
}

.block__lk__wrapper__clmn a:last-child {
	border-bottom: none;
}

.lk-fp-link {
  display: inline-block;
  padding: 15px 30px;
  background-color: #ab97b0;
  color: #fff;
  width: auto;
  margin-top: 15px;
  border-radius: 4px;
  border: none;
}

.lk-fp-link:hover {
  opacity: 0.8;
  color: #fff!important;
  border: none;
}

.block__lk__wrapper__clmn__between {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  width: 100%;
  height: 100%;
  border: 0;
}

.block__lk__wrapper__lic {
    background-color: rgba(211, 226, 244, 1);
    color: #2a78a1;
    display: inline-block;
    padding: 12px 24px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 2px;
    transition: all 0.3s ease 0s;
}

.block__lk__wrapper__lic:hover {
    background-color: rgba(211, 226, 244, .7);
    color: #2a78a1;
}

.block__lk__wrapper__file {
    background-color: rgba(180, 216, 217, .7);
    color: #549ea3;
    display: inline-block;
    padding: 12px 24px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 2px;
    transition: all 0.3s ease 0s;
}

.block__lk__wrapper__file:hover {
    background-color: rgba(180, 216, 217, .5);
    color: #549ea3;
}

.block__lk__wrapper__3dx {
    background-color: rgba(227, 216, 232, .7);
    color: #957f9a;
    display: inline-block;
    padding: 12px 24px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 2px;
    transition: all 0.3s ease 0s;
}

.block__lk__wrapper__3dx:hover {
    background-color: rgba(227, 216, 232, .5);
    color: #957f9a;
}

/* custom checkbox styling for contact form 7 checkbox  */
span.wpcf7-list-item {
    display: flex;
    margin: 0;
}

.wpcf7 .wpcf7-list-item {
    display: inline-block;
    padding: 20px 10px;
}

.wpcf7-checkbox label {
    position: relative;
    cursor: pointer;
    padding: 7px 0px;
}

.wpcf7-checkbox input[type=checkbox] {
/*position: relative;*/
    position: absolute;
    visibility: hidden;
    width: 15px;
    height: 15px;
    top: 0;
    left: 0;
}


.wpcf7-checkbox input[type=checkbox] + span {
    /* border: 3px solid red; */
}

.wpcf7-checkbox input[type=checkbox] + span:before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 0;
    height: 30px;
    width: 30px;
    top: 0px;
    left: 0px;
    border: 1px solid #fff;
    border-radius: 100%;
}
.wpcf7-checkbox input[type=checkbox] + span:after {
    display: block;
    position: absolute;
    content: "\2713";
    height: 30px;
    width: 30px;
    top: 0;
    left: 0;
    visibility: hidden;
    font-size: 16px;
    text-align: center;
    line-height: 30px;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {
background: transparent;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {
visibility: visible;
}
.wpcf7-list-item-label {
margin-left: 10px;
display: inline-block;
}

.consent-wrap .wpcf7-list-item {
    margin: 0;
    display: block;
} 

/* Убираем конфликты (сбрасываем ваши старые свойства) */
span.wpcf7-list-item,
.wpcf7 .wpcf7-list-item {
    display: block;
    margin: 0;
}

/* Ставим чекбокс и текст в один горизонтальный ряд */
.wpcf7-acceptance label {
    display: flex;
    align-items: flex-start; /* Чекбокс будет прижат к верхней строке текста */
    gap: 12px; /* Расстояние между галочкой и текстом */
    cursor: pointer;
    text-align: left;
}

/* Защищаем сам квадратик от деформации */
.wpcf7-acceptance input[type="checkbox"] {
    flex-shrink: 0; /* Не дает браузеру сплющить галочку, если текста много */
    margin-top: 3px; /* Выравниваем квадратик ровно по центру первой строки текста */
    width: 16px; /* Задаем четкий размер стандартному квадратику */
    height: 16px;
}

/* Стили для ссылок на Политику и Согласие */
.wpcf7-acceptance a {
    text-decoration: underline;
	color: rgb(156, 191, 226);
}

.wpcf7-acceptance a:hover {
    text-decoration: none;
}
