
@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap');

:root{
    --secondary-bg:#F7EBEB;
    --text-small:13px;
    --h1-hero:76px;
    --h1-hero2:52px;
    --h2-main:48px;
    --h3-main:36px;
    --btn-lg-radius:25px;
    --btn-lg-text:14px;
    --btn-lg-size:64px;
    --border-radius-lg:50px;
    --border-radius:30px;
    --bullet-radius:25px;
    --main-card-padding:100px;

     --swiper-pagination-color: var(--primary);
    --swiper-pagination-bullet-size: 10px;
    --swiper-pagination-bullet-width: 10px;
    --swiper-pagination-bullet-height: 10px;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-bullet-opacity: 1;
    --swiper-pagination-bullet-horizontal-gap: 4px;
    --swiper-pagination-bullet-vertical-gap: 6px;
}

@media (min-width: 1200px) {
    .container, .container-sm, .container-md, .container-lg, .container-xl {
        max-width: 1600px;
    }
}

body{

    line-height: 130%;

}

a, a:hover{
 text-decoration: none;
}

a:hover{
    color:var(--primary);
}

.row-group{
    margin-right: -7.5px;
    margin-left: -7.5px;
}
.row-group .col{
   padding-left: 7.5px;
   padding-right: 7.5px;
}

.btn{
    text-transform: uppercase;
}

.bg-secondary{
      background: var(--secondary-bg) !important;
}

.swiper-buttons-outside{
  position: relative;
}

.swiper-buttons-outside .swiper{
  overflow: visible;
}

.swiper-pagination{
    margin-bottom: 25px;
}
.swiper-pagination {
  pointer-events: all !important;
}
.swiper-pagination-bullet-active{
    background: var(--primary) !important;
}
.swiper-button-next, .swiper-button-prev {
    background: #fff !important;
    border: 1px solid var(--primary) !important;
    border-radius: 100%;
    width:48px !important;
    height: 48px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1 !important;
}
.swiper-button-next:after, .swiper-button-prev:after {
   color:var(--primary);
   font-size: 16px !important;
}
.swiper-buttons-outside .swiper-button-prev{
    margin-left: -60px;
}
.swiper-buttons-outside .swiper-button-next{
    margin-right: -60px;
}


.theme-btn-lg, .theme_form .btn[type="submit"]{
    border-radius: var(--btn-lg-radius);
    font-size: var(--btn-lg-text);
    font-weight: 550;
    padding: 0 30px;
    height: var(--btn-lg-size);
    display: flex;
    align-items: center;
    justify-content: center;
}

.theme_form .btn[type="submit"]{
  width: 100%;
}

.btn-more.w-icon{
    background-color: none;
    background-image: url(../images/icons/arrow-right.svg);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 24px 24px;
    padding-right: 30px;
    font-size: 16px;
    display: inline-flex;
    color: var(--primary);
}

.theme-input-lg{
    border-radius: var(--btn-lg-radius);
    height: var(--btn-lg-size);
    padding: 0 30px;
    font-size: 24px;
    font-weight: 550;
}

.theme-input-lg::placeholder{
    color: #666;
}

.theme-input-group {
    position: relative;
    display: flex;
    align-items: stretch;
    width: 100%;
    gap: 12px;
}

.theme-input-group .btn{
    white-space: nowrap;
}

.form-control{  
    border-color:#D06A66;
}

.theme_form input,
.theme_form select{
  font-size: 20px;
  font-weight: 500;
  border:none !important;
  border-radius: 15px;
}


.theme_order_form fieldset{
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    margin-bottom: 0 !important;
}

.theme_order_form fieldset .field > label{
    font-size: 14px;
    color: #888;
    margin-bottom: 5px;
    display: none;
}

.theme_order_form fieldset .field.ft_listbitmask,
.theme_order_form .field.ft_date{
    background: #fff;
    border-radius: 15px;
    padding: 20px;
}
.theme_order_form fieldset .field.ft_listbitmask > label,
.theme_order_form .field.ft_date > label{
    display: block;
}
.theme_order_form fieldset .field.ft_listbitmask > label{
   margin-bottom: 0px;
}
.theme_order_form .field.ft_date .form-control{
    border:1px solid #eee !important
}
.theme_order_form .field.ft_date .form-inline{
   margin-top: 10px;
}


.theme_order_form input,
.theme_order_form select{
    font-size: 18px;
    padding-left: 20px;
    padding-right: 20px;
    height: 54px;
    color: #000;
}

.theme_order_form .field{
  margin-bottom: 10px;
}

.theme_order_form form{
    margin-top: 30px;
}



.logo-wide{
    max-width: 275px;
}

img.icon-12,
svg.icon-12,
.icon-12 svg{
    height: 12px;
    width: auto;
}

img.icon-14,
svg.icon-14,
.icon-14 svg{
    height: 14px;
    width: auto;
}

img.icon-22,
svg.icon-22,
.icon-22 svg{
    height: 22px;
    width: auto;
}

img.icon-24,
svg.icon-24,
.icon-24 svg{
    height: 24px;
    width: auto;
}

img.icon-26,
svg.icon-26,
.icon-26 svg{
    height: 26px;
    width: auto;
}

img.icon-32,
svg.icon-32,
.icon-32 svg{
    height: 32px;
    width: auto; 
}

img.icon-36,
svg.icon-36,
.icon-36 svg{
    height: 36px;
    width: auto; 
}

img.icon-38,
svg.icon-38,
.icon-38 svg{
    height: 38px;
    width: auto; 
}

img.icon-42,
svg.icon-42,
.icon-42 svg{
    height: 42px;
    width: auto; 
}


img.icon-50,
svg.icon-50,
.icon-50 svg{
    height: 50px;
    width: auto; 
}

svg{
    shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd
}

.landing_item{
    display: none;
}

.h1-hero,
.h2-hero,
.h2-main,
.h3-main,
.font-black{
      font-family: "Roboto Flex", sans-serif;
      font-weight: 900;
}

.h1-hero,
.h2-hero{
    text-transform: uppercase;
    line-height: 110%;
}

.h2-main, 
.h3-main{
    text-transform: uppercase;
    line-height: 115%;
}

.h1-hero{
  font-size: var(--h1-hero);
}

.h2-hero{
  font-size: var(--h1-hero2);
}

.h2-main{
  font-size: var(--h2-main);
}

.h3-main{
  font-size: var(--h3-main);
}

.h1-hero,
.h2-hero, 
.h2-main,
.h3-main,
.h3-card,
.h4-card{
margin-bottom: 0;
}

.text-18{
    font-size: 18px;
}

.text-20{
    font-size: 20px;
}

.text-normal{
   font-size: 16px;
}

.text-normal-2{
  font-size: 15px;
}

.text-normal-3{
  font-size: 14px;
  line-height: 120%;
}

.text-small-1{
  font-size: 13px;
}

.text-small-2{
  font-size: 12px;
}

.h4-card{
  font-size: 24px;
  line-height: 110%; 
  font-weight: 600;
}

.h5-card{
  font-size: 22px;
   line-height: 110%; 
  font-weight: 600;
}

.h3-card{
  font-size: 36px;
  line-height: 110%; 
  font-weight: 800;
}


.title-normal-3{
  font-size: 14px;
  line-height: 120%; 
  font-weight: 600;
}


.h3-title{
    font-size: 32px;
    font-weight: 600;
}


.h4-title{
    font-size: 24px;
}

.h5-title{
    font-size: 22px;
}

.h6-title{
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
}


.text-smaller{
    font-size: 11px;
}



.h1-hero b,
.h2-hero b,
.h2-main b,
.h3-main b,
.h3-title b{
  color: var(--primary);
  font-weight: inherit;
}


.text-strong{
    font-weight: 500;
}

.text-bold{
    font-weight: 600;
}

.font-black{
    font-weight: 800; 
}


.gap-5{
    gap: 5px;
}

.mt-8{
 margin-top: 64px;
}
.mb-8{
 margin-bottom: 64px;
}

.mt-3_5{
    margin-top: 20px;
}
.mb-3_5{
    margin-bottom: 20px;
}

.opacity-80{
    opacity: 0.8;
}

.opacity-60{
    opacity: 0.6;
}


.lh-normal{
    line-height: 140%;
}
.lh-normal-2{
    line-height: 130%;
}
.lh-small{
    line-height: 120%;
}
.lh-small-2{
    line-height: 115%;
}
.lh-small-3{
    line-height: 110%;
}


.section-mt{
  margin-top: 30px;
}

.section-mb{
  margin-bottom: 30px;
}



.card-main-big{
    background: var(--secondary-bg);
    padding: var(--main-card-padding);
    border-radius: var(--border-radius-lg);
    border: 0 !important;
}


.card-body-md{
    padding: 40px;
}


.theme-card{
   display: flex; 
   flex-direction: column;
   align-items: center;
   justify-content: center;
   text-align: center;
   flex:1 0 0;
}

.theme-card.white{
    background: #fff;
    border-radius: 30px;
    overflow: hidden;
    border:0;
}

.theme-card-basic{
    background: #fff;
    border-radius: 30px;
    overflow: hidden;
    border:0;
}

.theme-card-outline-primary{
    background: none;
    border-radius: 30px;
    overflow: hidden;
    border-color:var(--primary);
}

.theme-form-check{
    display: flex;
    align-items: center;
    cursor: pointer;
}
.theme-form-check input{
    margin-top: -1px;
    position: relative;
    left:0;
    margin-right: 5px;
}

.theme-card-image{
    border-radius: 30px;
    overflow: hidden;
    height: 360px;
    width: 100%;
    object-fit: cover;
}

.theme-card-image.image-big{
    height: 530px;
}

.theme-card.horizontal{
   flex-direction: row;
   align-items: center;
   justify-content: start;
   text-align: left;   
}




.theme-topbar{
    background: var(--secondary-bg);
    height: 40px;
    display: flex;
    align-items: center;
    font-size: var(--text-small);
}

.theme-tobar-right{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
}

.theme-topbar-buttons{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-left: 25px;
}

.theme-topbar-buttons .btn{
    padding: 0;
    margin-left: 5px;
}

.theme-topbar-buttons .btn svg{
    height: 20px;
    width: auto;
}

.theme-topbar-buttons .icon-whatsapp svg{
    height: 19px;
}






.header .navbar{
    font-size: 14px;
    text-transform: uppercase;
}

.header .navbar .nav-link{
    padding-left: 8px;
    padding-right: 8px;
}

.header .navbar .nav-link.active{
    color: var(--primary);
    cursor: default !important;
}

.header-left-col,
.header-right-col{
    max-width: 290px;
    width: 290px;
}




.theme-features-grid{
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(3, 1fr);
grid-column-gap: 0px;
grid-row-gap: 5px;
}

.theme-features-grid li{
    display: flex;
    align-items: center;
    gap: 6px;
}



.theme-hero{
   display: flex;
   gap: 40px;
}

.theme-hero-title-wrap{
    position: relative;
}

.theme-hero-bullet{
    font-size: 11px;
    display: flex;
    align-items: center;
    gap: 10px;
    border:2px dashed var(--primary);
    border-radius: var(--bullet-radius);
    padding: 10px 12px;
    width:50%;
    position: absolute;
    right:0;
    bottom: 0;
    transform: rotate(-2.166deg);
    line-height: 110%;
}

.theme-hero-bullet img{
    width: 42px;
}

.theme-hero2 .theme-hero-bullet{
   transform:unset;
   position: static;
   width: 100%;
   padding: 0;
   border:0;
   font-size: 14px;
}
.theme-hero2 .theme-hero-bullet img{
    width: 32px;
}



.theme-hero-image{
    min-width: 300px;
}

.theme-hero-image img{
    width:100%;   
}






.theme-features-cards{
    display: flex;
    gap: 20px;
}

.theme-features-cards .card{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 15px;
    padding: 55px 0;
    width:182.5px;
    height: 160px;
    flex:1;
}

.theme-vk-cards .card{
  gap: 0;
}






.theme-about img{
   max-height: 130px;
}





.three-cards{
   display: flex; 
   align-items: flex-start;
   gap: 20px;
}

.theme-card.horizontal.reverse>div:last-child{
   order: -1;
}






.theme-reviews-cards .theme-card{
    height: 460px;
}
.theme-reviews-cards .theme-card-image{
    width: 100%;
    height: auto;
    object-fit:contain;
    border-radius: 0;
}


.slider-cards{

}




.theme-content-cards .theme-card:not(:first-child) {
    margin-top: 1.5rem;
}
.theme-content-cards .theme-card:nth-child(2n)>div:last-child{
   order: -1;
}



.card-toggler-wrap{
   cursor: pointer;
}

.theme-questions-cards h4{
    background-image: url(../images/icons/card-toggle.svg);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 24px 24px;
    padding-right: 35px;
    margin: 0;
}

.theme-questions-cards .actived h4{
   background-image: url(../images/icons/card-toggle-actived.svg);
}

.theme-questions-cards .actived .card-text{
    display: flex !important;
}



.theme-prices-cards .row{
   margin-left: -10px !important;
   margin-right: -10px !important;
}

.theme-prices-cards .col{
   padding: 10px;
}

.card-more{
    background: none !important;
    border:1px solid #D06A66 !important;
}




.theme-prices_list .theme_order_form{
     position: sticky;
     top:20px;
     overflow: visible;
}
.theme_order_form *::placeholder{
    color: #444;
}
 .theme_order_form .input_checkbox_list .custom-control{
    padding-top: 8px;
}
 .theme_order_form .input_checkbox_list .custom-control, 
 .theme_order_form .input_checkbox_list .custom-control label{
    cursor: pointer;
}
 .theme_order_form .input_checkbox_list .custom-control{
   display: flex;
   width:100%
}
 .theme_order_form .input_checkbox_list .custom-control:hover label{
    color: var(--primary);
}
.theme_order_form fieldset .field.ft_listbitmask .custom-control-label{
  display: flex;
  width: 100%;
}
 .theme_order_form .form-control, 
 .theme_order_form .chosen-results{
    color: #000;
}
.theme_order_form .ft_date .btn{
    display: none !important;
}
.theme_order_form .chosen-container-single .chosen-single{
    height: 54px;
    border:0 !important;
    border-radius: 15px;
    line-height: 54px;
    padding-left: 20px;
    padding-right: 20px;
    cursor: pointer;
}
.theme_order_form .ft_date > label:after,
.theme_order_form .ft_listbitmask > label:after,
.theme_order_form .chosen-container-single .chosen-single div:after{
    position: absolute !important;
    content:"";
    display: flex !important;
    align-items: center;
    height: 54px !important;
    top: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    right: 20px !important;
    width: 30px !important;
    background: url(../images/icons/chevron.svg) no-repeat center center !important;
}
.theme_order_form .ft_date.active > label:after,
.theme_order_form .ft_listbitmask.active > label:after{
      transform: rotate(-180deg);
}
.theme_order_form .chosen-container .chosen-drop{
    border:0 !important;
    border-bottom-left-radius: 15px !important;
    border-bottom-right-radius: 15px !important;
}
.theme_order_form .chosen-container .search-choice-close,
.theme_order_form .chosen-container .chosen-drop .chosen-search{
    display:none !important;
}
.theme_order_form .chosen-container .chosen-single.chosen-default span{
   font-size: 0;
}
.theme_order_form .chosen-container .chosen-single.chosen-default span:before{
   content:"Где обрабатываем";
   font-size: 18px;
   color: #222;
}
.theme_order_form .chosen-container .chosen-single.chosen-single-with-deselect span{
   font-size: 18px;
   color: #222;
}

.theme_order_form .ft_date,
.theme_order_form .ft_listbitmask{
    position: relative;
}
.theme_order_form .field.ft_date:not(.active),
.theme_order_form .field.ft_listbitmask:not(.active){
    padding-top: 17px;
    padding-bottom: 17px;
}
.theme_order_form .ft_date:not(.active) .form-inline,
.theme_order_form .ft_listbitmask:not(.active) .input_checkbox_list{
   display: none;
}
.theme_order_form .ft_date > label,
.theme_order_form .ft_listbitmask > label{
   width: 100%;
   cursor: pointer;
   display: flex !important;
   align-items: center;
   justify-content: space-between;
}
.theme_order_form .ft_date:not(.active) > label,
.theme_order_form .ft_listbitmask:not(.active) > label{
   font-size: 18px;
   color: #222;
   margin: 0;
}

.theme_order_form  .custom-control-label{
    font-size: 14px;
    padding-top: 2px;
}

.form_agree_wrap{
    margin-top: 10px;
}

.form_agree_wrap .custom-control-label{
   color: #666;
}

.theme_callback_form_cols{
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}
.theme_callback_form_cols .field{
    margin: 0 !important;
}
.theme_callback_form_cols .form-tabs{
    flex: 1;
}
.theme_callback_form_cols .form-control{
    height: 64px;
    font-size: 24px;
}
.theme_callback_form_cols .buttons{
    margin: 0 !important;
}

.theme-prices_list ul{
  display: flex;
  flex-direction: column;
}
.theme-prices_list ul li{
    padding-top: 4px;
    padding-bottom: 4px;
    position: relative;
}
.theme-prices_list ul li::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: var(--primary); 
  transform: scaleX(0);
  transform-origin: bottom left;
  transition: transform 0.25s ease-out;
}
.theme-prices_list ul li:hover::after {
  transform: scaleX(1);
}



.content_item img{
   border-radius: var(--border-radius);
}

.theme-content-list .icms-content-fields{

}
.theme-content-list .tile .f_photo{
  border-radius: var(--border-radius);
  background: #fff;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 436px;
}

.theme-content-list .pagination{
   margin-top: 60px !important;
}
.theme-content-list .pagination .d-none{
   display: none !important;
}
.theme-content-list .pagination_wrap{
   display: flex;
   align-items: center;
   justify-content: center;
}

.cats_cards{
    display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(4, 1fr);
grid-column-gap: 10px;
grid-row-gap: 10px;
}
.cats_cards .card{
    display: flex;
    flex-direction: row !important;
    align-items: center;
    border-radius: var(--border-radius);
    padding: 20px;
    gap: 10px;
}
.cat-icon {
    display: flex;
    height: 28px;   
    overflow: hidden; 
    width:28px;
    min-width: 28px;
}
.cat-icon img{
    height: 28px;
    width: auto;
}





.footer-links,
.footer-contacts{
    gap: 3px;
}


.footer-icons{
  margin-left: -5px;
}
.footer-icons .btn{
  padding: 5px;
}



