.elementor-22218 .elementor-element.elementor-element-2a7d650{--display:flex;--background-transition:0.3s;}.elementor-22218 .elementor-element.elementor-element-b3adc54{color:#030000;font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-22218 .elementor-element.elementor-element-c0e3914 > .elementor-widget-container{margin:20px 10px 10px 10px;}.elementor-22218 .elementor-element.elementor-element-12d43f0 .elementor-button{font-family:"Montserrat", Sans-serif;font-weight:600;background-color:transparent;background-image:linear-gradient(141deg, #13EB8E 0%, #2991F2 100%);border-style:solid;border-width:0px 0px 2px 0px;border-color:#0C6CAD;border-radius:15px 15px 15px 15px;box-shadow:0px 5px 5px 0px rgba(0, 0, 0, 0.3);}.elementor-22218 .elementor-element.elementor-element-12d43f0 .elementor-button:hover, .elementor-22218 .elementor-element.elementor-element-12d43f0 .elementor-button:focus{background-color:transparent;background-image:linear-gradient(180deg, #13EB8E 0%, #2991F2 100%);}.elementor-22218 .elementor-element.elementor-element-12d43f0 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22218 .elementor-element.elementor-element-a7c5da8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-22218 .elementor-element.elementor-element-b3d41b0{--display:flex;--background-transition:0.3s;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3.elementor-view-stacked .elementor-icon{background-color:#3BB185;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3.elementor-view-framed .elementor-icon, .elementor-22218 .elementor-element.elementor-element-2d9a1a3.elementor-view-default .elementor-icon{fill:#3BB185;color:#3BB185;border-color:#3BB185;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3{--icon-box-icon-margin:0px;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon{font-size:40px;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon i{transform:rotate(0deg);}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon-box-title{margin-bottom:6px;color:#352EBB;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon-box-title, .elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:600;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 .elementor-icon-box-description{color:#000000;font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 > .elementor-widget-container{margin:10px 0px 0px 0px;}@media(max-width:767px){.elementor-22218 .elementor-element.elementor-element-a7c5da8{--padding-block-start:20px;--padding-block-end:80px;--padding-inline-start:5px;--padding-inline-end:5px;}.elementor-22218 .elementor-element.elementor-element-b3d41b0{--gap:0px 0px;}.elementor-22218 .elementor-element.elementor-element-2d9a1a3 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-22218 .elementor-element.elementor-element-520f179 > .elementor-widget-container{margin:10px 0px 0px 0px;}}/* Start custom CSS for icon-box, class: .elementor-element-2d9a1a3 */.heroblock{
  --hb-g1:#352EBB;
  --hb-g2:#3BB185;
  --hb-grad: linear-gradient(90deg, var(--hb-g1), var(--hb-g2));
}

/* Градиентный border (как было) */
.heroblock{
  border: 2px solid transparent;
  border-radius: 16px;
  background:
    linear-gradient(#fff,#fff) padding-box,
    var(--hb-grad) border-box;
}

/* Заголовок градиентом */
.heroblock .elementor-icon-box-title,
.heroblock .elementor-icon-box-title span{
  background: var(--hb-grad);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}

/* ИКОНКА: убираем любые фоны от Elementor */
.heroblock .elementor-icon{
  background: none !important;
  position: relative;
  display: inline-block;
  line-height: 1;
}

/* SVG оставляем как "шаблон" по размеру, но делаем невидимым */
.heroblock .elementor-icon svg{
  display: block;
  width: 1em;
  height: 1em;
  opacity: 0;            /* важно: чтобы не было "иконка на фоне" */
}

/* Псевдо-слой по умолчанию НЕ рисуем (чтобы не было градиентного фона) */
.heroblock .elementor-icon::before{
  content:"";
  position:absolute;
  inset:0;
  background: transparent;
  -webkit-mask: var(--hb-mask) center / contain no-repeat;
          mask: var(--hb-mask) center / contain no-repeat;
}

/* Рисуем градиент ТОЛЬКО когда JS поставил mask */
.heroblock .elementor-icon.hb-mask-ready::before{
  background: var(--hb-grad);
}


/* === Gradient border override for Elementor containers === */
.heroblock{
  --hb-g1:#352EBB;
  --hb-g2:#3BB185;
  --hb-grad: linear-gradient(90deg, var(--hb-g1), var(--hb-g2));
}

/* ВАЖНО: на самом контейнере Elementor */
.elementor .heroblock{
  /* убираем цвет обычного бордера Elementor */
  border-color: transparent !important;
  --border-color: transparent !important;

  /* сохраняем твою ширину/стиль бордера (Elementor оставит), но цвет делаем прозрачным */
  background:
    linear-gradient(#fff,#fff) padding-box,
    var(--hb-grad) border-box !important;

  background-clip: padding-box, border-box !important;
  background-origin: padding-box, border-box !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-520f179 */.sqf-step-header{
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: -10px!important;
}

.sqf-option-card {
    display: flex;
    flex-direction: column;
    gap: 0px!important;
}

@media (max-width: 900px) {
    .sqf-wrap.sqf-mini .sqf-progress {
        height: 6px;
        margin-top: -6px!important;
    }
}

@media (max-width: 900px) {
    .sqf-wrap.sqf-mini .sqf-section {
        padding: 5px!important;
        border-radius: 12px;
    }
}


.sqf-step-header {
    display: none!important;}
    
    
    .sqf-section h3 {
    display: flex;
    margin: 0 0 0px!important;;
    font-size: 17px!important;;
    justify-content: center;
}


.sqf-hint {
    margin: 0 0 4px!important;
    color: var(--sqf-muted);
    font-size: 11px!important;
}

@media (max-width: 900px) {
    .sqf-wrap.sqf-mini .sqf-form {
        max-width: 100%;
        padding: 0px!important;
        gap: 10px!important;}
        
.sqf-steps {
    padding-top: 9px!important;
    z-index: 1;
}


.sqf-step-block h4 {
    display: flex;
    margin: 0 0 2px!important;
    font-size: 16px;
    justify-content: center;
}


.sqf-option-label {
    font-weight: 600;
    font-size: 12px!important;
    color: var(--sqf-text);
    display: block;
    padding: 5px 6px!important;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}


.sqf-option-card {
    display: flex;
    flex-direction: column;
    gap: 0px !important;
    height: 100%!important;}
    
    
.sqf-label-text {
    font-size: 14px!important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}


.sqf-cta {
    font-size: 10px!important;}
    
    
    
    .sqf-hint {
    display: none!important;
    margin: 0 0 4px !important;
    color: var(--sqf-muted);
    font-size: 11px !important;
}


.sqf-search {
    font-size: 10px!important;
    display: flex;
    flex-direction: column;
    gap: 1px!important;
    width: 100%;
    align-content: center;
    align-items: center;
}


.sqf-fields-grid, .sqf-contact-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 5px!important;
}


.sqf-field {
    display: flex;
    flex-direction: column;
    gap: 2px!important;
    background: #f7f9ff;
    border: 1px solid var(--sqf-border);
    padding: 10px!important;
    border-radius: 14px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    min-width: 0;
}/* End custom CSS */