.text-accent{
    color: var(--accent);
}
.start-8 {
	left: 8% !important;
}
.start-15 {
	left: 15% !important;
}
.top-30{
    top:30% !important;
}
.bg-gray{
    background: var(--bg-gray);
    padding: 5rem 0;
}
.lh-130{
    line-height: 130%;
}
.lh-150{
    line-height: 150%;
}
.gap-6 {
	gap: 5rem !important;
}
.z-index-1{
    z-index: 1 !important;
}
.z-index-2{
    z-index: 2 !important;
}
.z-index-3{
  z-index: 3 !important;
}
.navbar-navigation-root-item.active{
    background: var(--hover);
}
.navbar-navigation-root-item.active span{
    color: #fff !important;
}

.footer .social .social-icon img{
    filter: grayscale(100%);
}
.footer .social .social-icon:hover img{
    filter: grayscale(0%);
}
.footer-logo-wrap{
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
.footer-logo-wrap > *{
    margin-top: 0 !important;
}
.footer .list.list-sm .list-item + .list-item {
    margin-top: 0.75rem;
}
.footer .list-icons .list-item + .list-item {
    margin-top: 1rem;
}
.footer .btn-white:hover img{
	filter: invert(100%);
}

/*Наши услуги - главная*/
.service_card{
    /* position: relative; */
    min-height: 19rem;
    display: flex;
    flex-direction: column;
    /* justify-content: space-between; */
    /* gap: 1.25rem; */
    font-size: 1rem;
    text-align: left;
    padding: 1.25rem 1.75rem;
    border-radius: 8px;
    border: 1px solid #D6E0E2 !important;
}
.service_card_list{
    margin-top: 20px;
    list-style: url(/assets/templates/images/icons/icon_list_marker.svg) inside;
}

.service_card_list li::marker{
   margin-right: .5rem;
   display: block;
   width: 8px;
   height: 8px;
}
.service_card_list li+li{
    padding-top: 12px;
}
.service_card_btn{
    cursor: pointer !important;
    margin-top: auto;
    color: var(--text-secondary);
    text-decoration: underline 1px;
}
.service_card-single{
    max-height: 7rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    text-align: left;
    padding: 1.25rem 1.75rem;
    border-radius: 8px;
    border: 1px solid #D6E0E2 !important
}
.trust-reasons-text ul{
    max-height: 150px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    list-style: url(/assets/templates/images/icons/icon_list_marker_check.svg) inside;
}
.trust-reasons-text ul li{
    margin-top: 1.375rem;
}
.trust-reasons-video iframe{
    width: 100%;
    height: 32.25rem;
}
@media (max-width:768px){
  .trust-reasons-text ul{
    flex-wrap: nowrap;
  }
  .trust-reasons-video iframe{
    height: 20rem;
  }
}


.single-page-info ul{
    list-style: disc;
    /* margin-top: 1rem;
    margin-left: 1.75rem; */
    padding-left: 1rem;
}
.single-page-info ol{
    list-style-type:decimal;
    /* margin-top: 1rem;
    margin-left: 1.75rem; */
        padding-left: 1rem;
}
.nav-link-downdrop{
    padding: 1rem 1.1875rem;
    list-style: url(/assets/templates/images/icons/icon_list_marker.svg) inside;
}
.nav-link-downdrop .list-item{
    padding: .25rem;
}
.nav-item.active .nav-link,
.nav-item.current .nav-link{
    background: var(--bg-gray);
}
.list-item.current{
    list-style: none;
}
.list-item.current a{
    color: var(--accent);
}
.table-price thead th{
    background: var(--bg-gray) !important;
    color: var(--text-secondary) !important;
}
.table-price tbody{
    color: var(--text-primary) !important;
}
.banner_main{
  height: 55rem;
  width: 100%;
}
.form-bg-img{
  height: 95%;
  top:0; 
  left: 15%;
}
.form-small{
  padding: 6rem;
}
.breadcrumb-section +section{
  margin-top: 2.5rem;
}
.arc-arrow > div{
  position: relative;
}
.arc-arrow > div:not(:last-child)::after{
  content: url(/assets/templates/images/icons/arc_arrow.svg);
  position: absolute;
  top: 15%;
  right: -48%;
  width: 100%;
  height: auto;
}
.arc-arrow > div:nth-child(even):not(:last-child)::after{
  transform: scaleY(-1);
}
@media (max-width:1200px){
  .breadcrumb-section .breadcrumb-section-inner {
    margin-top: 1rem;
  }
}
@media (max-width:992px){
  .form-small{
    padding: 2rem 1.25rem;
  }
  .arc-arrow > div:not(:last-child)::after{
    top: unset;
    bottom: 0;
    transform: scaleY(-1) rotate(-90deg);
    right: -50%;
  }
  .arc-arrow > div:nth-child(even):not(:last-child)::after{
    right: unset;
    left: -50%;
    transform: scaleY(1) rotate(90deg);

  }
}

@media (max-width:768px){
  .banner_main{  
    height: 35rem;
  }
  .banner-service-cat > img{
    filter: blur(4px);
  }
  .banner-blur{
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgb(237, 241, 242,.6);
  }
  .banner-service-cat > img{
    object-fit: cover;
  }
  .form-bg-img{
    height: unset;
    left:unset;
    right: 0;
    width: 50%;
    height: auto;
  }
  .form-small{
    padding: 2rem 1.25rem;
  }

  .breadcrumb-section +section{
    margin-top: 1rem;
  }
}
.blog-post-content-nav-list{
  background: var(--bg-gray);
  border-radius: 10px;
  padding: 2rem;
  list-style: disc;
  position: sticky;
  top: 4rem;
}
.blog-post-content-nav-list li{
  margin-top: .3rem;
  margin-left: 1rem;
}
.blog-post-content ul{
  list-style: disc;
  padding-left: 1rem;
  margin-top: 0.5rem;
}
.blog-card-body{
  padding: 1.25rem;
    border: 1px solid #dde0e9;
    border-top: none;
    height: 400px;
    display: flex;
    flex-direction: column;
    gap:2rem;
}
.portfolio-case{
  height: 250px;
}
.thumbnail-custom-img img{
  height: 200px;
  width: 50%;
  object-fit: cover;
  filter: grayscale(100%);
}
.thumbnail-custom-img img:hover{
  filter: grayscale(0%);
}
.post-img{
  height: 200px;
  object-fit: cover;
  border: 1px solid #dde0e9;
  border-bottom: none;
}
#form-1 .btn{
  width: auto;
}
@media (max-width:768px){
  #form-1 .btn{
    width: 100%;
  }
}
.contact-form{
    background-color: #fff;
    box-shadow: 0px 34px 40px rgba(18, 75, 64, 0.06);
}

.contact-form-header{
    background-color: #455e68;
    text-align: center;
    padding: 1.8125rem 1.25rem;
}

.contact-form-body{
    padding: 1.75rem 1.25rem;
}

.gray-inputs input:not([type="submit"]),
.gray-inputs textarea{
    background: var(--bg-gray) !important;
    border:none !important;
}

.faq-card{
  display: flex;
  justify-content: space-between;
  padding-bottom: 16px;
}

.faq-card:not(:last-child){

border-bottom: 1px solid var(--text-secondary);
}
.faq-card-text{
  display: flex;
  flex-direction: column;
  gap:1.25rem;
}
.faq-card-text .fw-bolder{
 font-size: 1.5rem;
}

#quiz_modal { position: fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:9999;}
.modal_content { max-width:520px; margin:5% auto; background:#fff; padding:32px; border-radius:16px;}
.step {display: none;}
.step.active {display:block;}
.services button, .timing button { display:inline-block; margin:8px 10px; padding:18px 22px; border:1px solid #ccc; border-radius:8px; background:#f9fafd; cursor:pointer;}
.services button.selected, .timing button.selected { border:2px solid #14A1FF; background:#e6f6ff;}
.submit-btn { background: #14A1FF; color:#fff; border:none; }
.step4 {text-align:center;}

@media (min-width: 576px) {
    #quiz-modal .modal-dialog {
        max-width: 60vw;
        max-height: 95vh;
        background: #fff;
    }
}
#quiz-modal .modal-content {
  background-size: contain;
  background-image: url(/assets/templates/images/bg_services_block.png);
}
#quiz-modal .modal-header{
  border-bottom: none;
}
#quiz_form .services,
#quiz_form .timing{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
}
.quiz_service_card,
.timing_card {
  cursor: pointer;
  width: 30%;
  min-height: 160px;
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  font-size: 1rem;
  text-align: left;
  padding: 2.5rem 2rem;
  border-radius: 8px;
  border: 1px solid #D6E0E2 !important;
  background: #fff;
  max-height: 60vh;
  overflow-y: auto;
}
.quiz_service_card {
  width: 30%;
}
.timing_card {
  width: 48%;
}
@media(max-width:995px){
  .quiz_service_card {
    width: 45%;
  }
  .timing_card {
    width: 100%;
  }
}
.quiz_service_card:hover,.quiz_service_card.selected,
.timing_card:hover,.timing_card.selected {
  background: #EDF1F2;
}
.quiz_service_card img{
  width: 3rem;
  height: 3rem;
}

.steps-tags{
  display: flex;
}
.steps-tags span{
  position: relative;
  cursor: pointer;
}
.steps-tags span.done svg path{
  fill: #10C89C;
  /* filter: invert(52%) sepia(81%) saturate(563%) hue-rotate(118deg) brightness(101%) contrast(87%); */
}
.steps-tags span.done .h4{
  color: #fff;
}
.steps-tags .h4{
  margin-top: 0;
  position: absolute;
  top: 27%;
  left: 30%;
  color: #555;
}
.steps-tags span .fa-check-square-o{
  display: none;
}
.steps-tags span.done .fa-check-square-o{
  display: inline-block;
}
.step1-tag{
  z-index: 3;
}
.step2-tag{
  z-index: 2;
  margin-left: -40px;
}
.step3-tag{
  z-index: 1;
  margin-left: -40px;
}

#quiz_form .btns-wrap{
  display: flex;
  gap: 1.5rem;
}

#quiz_form button.back, 
#quiz_form button.next,
#quiz_form button.submit-btn { 
  padding:1rem 1.25rem ; 
  border-radius:8px; 
  cursor:pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 12rem;
  margin-top: 40px;
}
#quiz_form button.back .fa, 
#quiz_form button.next .fa { 
  font-size: 24px;
  line-height: 16px;
}
#quiz_form button.next { 
  border:1px solid var(--accent); 
  color:var(--accent); 
}
#quiz_form button.next:hover { 
  color:#fff; 
  background: var(--accent); 
}
#quiz_form button.back{ 
  border:1px solid #222; 
  color:#222; 
}
#quiz_form button.back:hover{  
  color:#fff; 
  background:#222; 
}
#quiz_form button.submit-btn{ 
  border:1px solid var(--accent);
  background:var(--accent);
  color:#fff; 
}
#quiz_form button.submit-btn:hover{  
  background: #fff;
  color:var(--accent); 
}
#quiz_form .form-group{
  margin-top: 0;
}
#quiz_form .form-control{
  border:1px solid;
}
#quiz_form input[type="checkbox"]{
    accent-color: var(--accent);
}
.modal .close{
  font-size: 36px;
  line-height: 24px;
}
.custom-checkbox{
  padding: 0.5rem;
  width: 1.25rem;
  height: 1.25rem;
  border: 2px solid var(--accent);
  border-radius: 4px;
  position: relative;
}
.custom-checkbox.checked::after{
  content: "\f00c";
  font: normal normal normal 14px / 1 FontAwesome;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  color: var(--accent);
}
.custom-checkbox + input[type="checkbox"]{
  opacity: 0;
  appearance: none;
}
.table-price tbody tr td:first-child{
  width: 70%;
}
.spec-card{
  filter: grayscale(100%);
}
.spec-card:hover{
  filter: unset;
}
.spec-card{
  height: 51rem;
}
.spec-card a{
  height: 32rem;
}
.spec-card a img{
  height: 100%;
  object-fit: cover;
}
.no-img{
  width: 100%;
  background: var(--bg-gray);
  position: relative;
}
.spec-card a .no-img{
  height: 100%;
}
.spec-page .no-img{
  height: 30rem;
}

.no-img::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: url(/assets/templates/images/bg_form.svg) 50% no-repeat;
  background-size: contain;

}
.spec-page a{
  color: var(--accent);
}
.form-main-outer:has(+footer){
  margin-bottom: 0;
}
.card-review__wrapper .ec-message{
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.reviews-form .ec-alert {
    background: transparent;
    padding: 0;
    border-radius: 0.25rem;
    margin-bottom: 1rem;
    font-size: 1.25rem;
}
.reviews-form .ec-stars {
    display: none;
}
.section-content ul{
  list-style: disc;
  padding-left: 1rem;
}
.section-content ol{
  list-style-type: decimal;
    padding-left: 1rem;
}
.section:has(+footer){
  margin-bottom: 0;
  padding-bottom: 3rem;
}
.blog-post-content-nav-list li:first-child{
  list-style: none;
  margin-left: 0;
}
.read-more__review{
  cursor: pointer;
  color: var(--accent);
}

.reviews_rating-wrap {
    margin-top: 40px;
    display: flex;
    gap: 2rem;
}

.reviews_rating {
    background-color: #ededed;
    display: flex;
    box-sizing: border-box;
    padding: .5rem .75rem;
    gap: .5rem;
    border-radius: .25rem;
    width: 15rem;
    height: 6.5rem
}

.reviews_rating img {
    width: 32px;
    height: 32px
}

.reviews_rating .text {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 14px;
    width: auto;
}
.reviews_rating .text p{

    margin: 0;
}
.reviews_rating .text p:first-child {
    font-size: 20px;
    font-weight: 700;
    color: #c8102e;
    position: relative
}

.review-star {
    display: flex;
    gap: .25rem;
    align-items: center
}
.review-star img {
    width: auto;
    height: inherit
}
@media(max-width:991px){
  .reviews_rating-wrap {
    margin-bottom:5rem;
  }
}
@media (max-width: 768px) {
    .reviews_rating-wrap {
        flex-direction:column;
        width: 100%;
        margin-bottom: 0;
        gap: 0.5rem;
    }

    .reviews_rating {
        width: 100%;
        height: 6.5rem
    }
}
#how_we_work_first{
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

#how_we_work_first .row-content{
  display: flex;
  flex-direction: row;
  text-align: center;
  margin-top: 0;
}
#how_we_work_first .row-content > div{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
#how_we_work_second{
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
#how_we_work_second .row-content{
  display: flex;
  justify-content: center;
  margin-top: 0;
}
#how_we_work_second .row-content img{
  object-fit: contain;
}
#how_we_work_second .row-content img:first-child{
  max-height: 300px;
}
#how_we_work_second .row-content img:last-child{
  max-height: 150px;
}
@media (max-width: 991px) {
  #how_we_work_first .row-content{
    flex-direction: column;
}
}
@media (max-width: 768px) {
  #how_we_work_first{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }
  #how_we_work_second{
    flex-direction: column;
    gap: 2rem;
  }
  #how_we_work_second .row-content{
    flex-direction: column-reverse;
  }
}
.bonuses-img{
  height: 5rem;
  width: auto;
}
.form-item.recaptcha{
  margin-top: 1rem;
}