.sppb-addon-wimble-person .sppb-person-image {
  border-radius: 10px !important;
  box-shadow: 0px 0px 20px rgb(0 0 0 / 10%) !important;
}

.contactstyle1 a {
  font-family: "Manrope", sans-serif;
  letter-spacing: 1px;
  color: #050505;
  font-size: 20px;
}
.contactstyle1 a:hover {
  font-family: "Manrope", sans-serif;
  letter-spacing: 1px;
  color: #ff166f;
  font-size: 20px;
}

.contactstyle1 em {
  font-size: 25px;
  color: #ff166f;
  padding: 5px;
}

.transparent-header .chasiraboti {
  font-size: 12px;
  text-align: left;
  color: #fff;
}

.header-sticky.transparent-header .chasiraboti {
  color: #000 !important;
}

.debug_left_buttons
  .sliding.align-left.contactus-center.contactus-button.customiconbutton:last-child
  .contactus-button {
  background-color: transparent !important;
  border-radius: 55px;
  color: transparent;
  font-size: 0;
  height: 110px;
  padding-left: 92px;
  text-align: center;
  transition: width 0.7s ease 0s, font-size 0.7s ease 0s, padding 0.7s ease 0s,
    background-color 0.9s ease 0s;
  width: 110px;
}

.sppb-addon-wimble-person .sppb-wimble-person-info-wrapper {
  padding: 30px 0px 77px 35px !important;
}

.sppb-person-name {
  font-size: 32px !important;
  padding: 30px 0px 100px 0px !important;
  line-height: 44px !important;
  text-shadow: 0px 2px 7px rgb(0, 0, 0) !important;
}

.debug_hidden {
  display: none;
}

.logo-image {
  height: 70px;
}

.customphonenumber1 a {
  color: #000 !important;
}
.customphonenumber1 a:hover {
  color: #ff166f !important;
}

.wimble-home-slider.sppb-addon-sp-slider .sppb-sp-slider-title.arrow-title {
  max-width: 100%;
}

.contact_text_item i {
  padding-right: 12px !important;
}
.contact_text_item {
  padding-bottom: 14px !important;
  font-size: 22px !important;
}

.contact_text_item_heading {
  padding-bottom: 10px !important;
}

.hochutakoi {
  font-size: 15px;
  display: flex;
}

.hochutakoi {
  width: 172px !important;
  margin-top: 20px !important;
}

.customiconbutton {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
  border-radius: 50px !important;
  margin-left: 8px !important;
}

.hovertext {
  font-size: 0px;
  display: block;
  margin-top: 0px;
  margin-left: 0px;
  display: block;
}

/*
#button-contactus-lightbox133 {
    display: none;
}


#contactus-lightbox133 div.contactus-lightbox-body {
    padding: 20px 15px 237px 15px;
    background: url(https://st1-47.vk.com/images/join/finish_f.png);
        background-position-x: 0%;
        background-position-y: 0%;
        background-repeat: repeat;
    background-repeat: no-repeat;
    background-position: center;
}



.joomly-p.field1133 {
    text-align: center;
}

.sp-slider-custom-dot-indecators {
    display: none;
}

*/

.slider_custom_shadow_left {
  margin-left: -500px;
}

.wimble-home-slider.sppb-addon-sp-slider
  .sp-slider_number
  > .sp-slider_current_number {
  display: none;
}

.slider_custom_shadow.slider_custom_shadow_left {
  background: #000 !important;
  width: 200px !important;
  height: 200px !important;
  border-radius: 200px !important;
  padding-top: 50px !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

#sp-slider-inner-item-1603275116515-num-0-key {
  margin-bottom: -210px !important;
}

#sp-slider-inner-item-1603275116516-num-0-key {
  margin-bottom: -210px !important;
}

#sp-slider-inner-item-1603275116517-num-0-key {
  margin-bottom: -210px !important;
}

.customiconbutton:hover .hovertext {
  font-size: 13px;
  display: block;
  margin-top: -20px;
  margin-left: 35px;
}

.hovertext {
  transition: all 0.3s ease;
  color: black;
}

button.contactus-button.sliding.align-left.customiconbutton {
  -webkit-transform: none;

  -moz-transform: none;

  -ms-transform: none;

  -o-transform: none;

  transform: none;
}

.sp-slider
  #sp-slider-item-1603275116514-num-0-key
  #sp-slider-inner-item-1603275116515-num-0-key {
  font-size: 54px;
  line-height: 76px;
  text-shadow: 0px 2px 7px rgb(0, 0, 0) !important;
}

.sp-slider
  #sp-slider-item-1603275116514-num-1-key
  #sp-slider-inner-item-1603275116516-num-0-key {
  font-size: 54px;
  line-height: 76px;
  text-shadow: 0px 2px 7px rgb(0, 0, 0) !important;
}

.sp-slider-custom-dot-indecators {
  display: none;
}

.sp-slider
  #sp-slider-item-1603275116514-num-2-key
  #sp-slider-inner-item-1603275116517-num-0-key {
  font-size: 54px;
  line-height: 76px;
  text-shadow: 0px 2px 7px rgb(0, 0, 0) !important;
}

.slider_custom_shadow {
  text-shadow: 0px 2px 7px rgb(0, 0, 0) !important;
}

.slidercustoactionbutton {
  margin-top: 25px;
}

.formControlLabel {
  flex: 0 0 100%;
  max-width: 100%;
  padding-bottom: 40px;
}

.formControls {
  flex: 0 0 100%;
  max-width: 100%;
}

.rsformProgressBar {
  background: #ff166f;
}

.btn-success {
  background-color: #ff166f;
}

.btn-success:hover {
  background-color: #ff166fc4;
  border-color: #ff166fc4;
}

.rsform-block-tipfasada label[for="tipfasada0"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/1.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada1"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/2.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada2"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/7.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada3"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/5.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada4"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/4.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada5"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/9.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.rsform-block-tipfasada label[for="tipfasada6"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/3.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}
.rsform-block-tipfasada label[for="tipfasada7"]::before {
  content: "" !important;
  width: 230px !important;
  height: 230px !important;
  background: url(/images/materials/10.jpg) !important;
  background-repeat: repeat;
  background-size: auto;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  display: block;
  border-radius: 10px;
}

.form-check {
  text-align: center;
}

@media screen and (max-width: 1200px) {
  .sliding.align-left.contactus-center.contactus-button.customiconbutton {
    height: 60px;
    width: 60px;
  }
  button.contactus-button.sliding {
    padding: 0px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}

#sp-headphone {
  padding-top: 5px;
  font-size: 12px;
  font-weight: 700;
}

@media screen and (max-width: 700px) {
  #btn-1623829639369 {
    display: block;
  }

  #btn-1623418932275 {
    display: block;
  }

  h2 {
    font-size: 26px !important;
    line-height: 43px !important;
  }

  .sppb-person-name {
    font-size: 25px !important;
  }
}

.logo-image-phone {
  height: 52px !important;
  object-fit: contain;
}

@media (min-width: 300px) and (max-width: 348px) {
  .phonehead {
    font-size: 11px !important;
  }
}

@media screen and (max-width: 500px) {
  #sp-headphone {
    padding-top: 20px;
  }

  .slider_custom_shadow.slider_custom_shadow_left {
    font-size: 14px;
    margin-top: 165px !important;
    margin-bottom: 0px !important;
    width: 164px !important;
    height: 73px !important;
    padding-top: 18px !important;
    padding-bottom: 6px !important;
  }
  /*
.slider_custom_shadow_left {
    margin-left: 117px;
    margin-top: 166px !important;
    margin-bottom: -65px !important;
}


.slider_custom_shadow_left {
    margin-top: 146px !important;
}

.slider_custom_shadow {
    margin-top: 60px;
}

*/
}

@media screen and (max-width: 570px) {
  #sp-headphone {
    padding-top: 0 !important;
    font-size: 13px !important;
    padding-left: 0px !important;
    padding-right: 0px;
  }

  .logo-image {
    height: 50px !important;
  }

  .customadaptive3 {
    flex: 0 0 51.333% !important;
    max-width: 51.333% !important;
  }

  .customadaptive1 {
    flex: 0 0 48.667% !important;
    max-width: 48.667% !important;
  }

  .slider_custom_shadow_left {
    margin-left: 110px;
    margin-top: 20px !important;
    visibility: hidden;
  }
}

@media screen and (max-width: 1070px) {
  .customadaptive1 {
    flex: 0 0 41.667% !important;
    max-width: 41.667% !important;
  }

  .customadaptive2 {
    flex: 0 0 40.666667% !important;
    max-width: 40.666667% !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .customadaptive1 {
    flex: 0 0 17.667% !important;
    max-width: 17.667% !important;
  }

  .customadaptive2 {
    flex: 0 0 65.667% !important;
    max-width: 65.667% !important;
  }

  .phonehead {
    font-size: 14px;
    margin-left: -14px;
    margin-right: -14px;
  }

  .customiconbutton:hover .hovertext {
    display: none;
  }
}

.contactus-lightbox label {
  transform: none;
}

.contactus-file {
  margin-bottom: 10px;
}
#sp-headphone {
    padding: 0;
    display: flex;
    align-items: center;
}
#sp-headphone .chasiraboti {
    margin-bottom: 0;
}
.phonehead {
    font-size: 16px;
}
.offcanvas-menu {
    z-index: 9999999999;
}
.wimble-portfolio-item .sppb-media-content {
    left: 95px;
    bottom: 90px;
}
.wimble-portfolio-item .sppb-media-content {
    text-shadow: 0 0 2px black;
}

@media screen and (min-width: 1200px) and (max-width: 1440px) {
    #sp-logo {
        flex: 0 0 12.666667%;
        max-width: 12.666667%;
    }
    .customadaptive1 {
        flex: 0 0 18.667% !important;
        max-width: 18.667% !important;
    }
    .customadaptive2 {
        flex: 0 0 68.667% !important;
        max-width: 68.667% !important;
    }
}

@media screen and (min-width: 1200px) {
  .sp-megamenu-parent > li > a,
  .sp-megamenu-parent > li > span,
  .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    font-size: 14px !important;
    margin-left: 3px;
    margin-right: 13px;
  }

  body .sppb-btn.sppb-btn-default.sppb-btn-outline,
  body .btn.sppb-btn-default.sppb-btn-outline,
  body .sppb-btn.sppb-btn-primary.sppb-btn-outline,
  body .btn.sppb-btn-primary.sppb-btn-outline,
  body .sppb-btn.btn-primary.sppb-btn-outline,
  body .btn.btn-primary.sppb-btn-outline {
    padding: 8px 10px 7px 10px !important;
    font-size: 13px;
  }
  
}
@media screen and (max-width: 1200px) {
  .debug_left_buttons .hovertext {
    display: none !important;
  }
}
@media (min-width: 376px) and (max-width: 1230px) {
  .slider_custom_shadow.slider_custom_shadow_left {
    font-size: 14px;
    margin-top: 104px !important;
    margin-bottom: 20px !important;
    width: 164px !important;
    height: 73px !important;
    padding-top: 18px !important;
    padding-bottom: 6px !important;
  }
  
}

@media screen and (max-width: 670px) {
  body.helix-ultimate .sppb-row-container {
    max-width: 420px;
  }
}

@media screen and (max-width: 576px) {
  .debug_left_buttons {
    display: flex;
    position: fixed;
    bottom: 0;
    top: unset;
    left: 0;
    right: 0;
    height: 60px;
    z-index: 99;
    background: #fff;
  }
  .debug_left_buttons button.contactus-button.sliding.align-left {
    position: static;
    border-radius: 0px !important;
    margin: 0 !important;
  }
}

@media screen and (max-width: 480px) {
  .slider_custom_shadow.slider_custom_shadow_left {
    width: 100% !important;
    height: unset !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  #sp-slider-inner-item-1603275116515-num-0-key {
    margin-bottom: 0 !important;
  }
  .sp-slider #sp-slider-item-1603275116514-num-0-key #sp-slider-inner-item-1603275116515-num-1-key {
    display: none;
  }
}

@media screen and (max-width: 430px) {
    .customadaptive3 {
        flex: 0 0 45.333% !important;
        max-width: 45.333% !important;
    }
    #sp-headphone {
        flex: 1 !important;
        max-width: 100% !important;
    }
}

@media screen and (max-width: 400px) {
  .debug_left_buttons {
    padding-right: 80px;
    height: 50px;
  }
  .sliding.align-left.contactus-center.contactus-button.customiconbutton {
    width: 50px;
    height: 50px;
    padding: 15px;
  }
}

@media screen and (max-width:680px ) {
    .debug_left_buttons #button-contactus-lightbox-form135 {
      bottom: 300px !important;
    }
    .debug_left_buttons .contactus-button.customiconbutton {
      bottom: 230px !important;
    }
    .debug_left_buttons #button-contactus-lightbox-form122 {
      bottom: 160px !important;
    }
    .debug_left_buttons #button-contactus-lightbox-form124 {
      bottom: 90px !important;
    }
    .debug_left_buttons #button-contactus-lightbox-form123 {
        bottom: 20px !important;
    }
    
    .debug_left_buttons .customiconbutton:hover .hovertext {
        font-size: 0 !important;
    }

}

.whatsapp-button {
  background: #25d366;
  /*цвет кнопки*/
  right: 10px;
  top: 190px;
}

.whatsapp-button:before,
.whatsapp-button:after {
  border: 1px solid #25d366;
  /*цвет анимированных волн от кнопки*/
}

.soc_btn {
  position: fixed;
  transform: translate(-30%, 450%);
  border-radius: 50%;
  width: 55px;
  /*ширина кнопки*/
  height: 55px;
  /*высота кнопки*/
  color: #fff;
  text-align: center;
  line-height: 53px;
  /*центровка иконки в кнопке*/
  font-size: 35px;
  /*размер иконки*/
  z-index: 9999999;
}

.soc_btn a {
  color: #fff;
}

.soc_btn:before,
.soc_btn:after {
  content: " ";
  display: block;
  position: absolute;
  border: 50%;
  left: -20px;
  right: -20px;
  top: -20px;
  bottom: -20px;
  border-radius: 50%;
  animation: animate 1.5s linear infinite;
  opacity: 0;
  backface-visibility: hidden;
}

.soc_btn:after {
  animation-delay: .5s;
}

@keyframes animate {
  0% {
      transform: scale(0.5);
      opacity: 0;
  }

  50% {
      opacity: 1;
  }

  100% {
      transform: scale(1.2);
      opacity: 0;
  }
}

@media (max-width: 880px){
.whatsapp-button {
top: unset;
bottom: 103px;
right: 24px;
transform: scale(1.2);
}
}

@media (max-width: 440px){
  .soc_btn {
    transform: translate(0%, -50%);
  }
/*   .element2slyder {
    margin-top: 33px;
  } */
}
@media (max-width: 480px) {
  div#sp-slider-inner-item-1603275116516-num-2-key {
    margin-top: 35px !important;
  }
  div#sp-slider-inner-item-1603275116517-num-2-key {
    margin-top: 35px !important;
  }
}

.politika {
  display: none !important;
}

.contactus-checkbox-label a {
  font-size: 13px !important; 
}

.contactus-checkbox-label .contactus-sp a {
  font-size: 13px !important; 
}


.discount {
  text-decoration: line-through;
  text-decoration-color: #FF166F;
  text-decoration-thickness: 3px;
}

:root{
    /* desktop defaults */
    --cfab-gap: 12px;
    --cfab-item: 64px;
    --cfab-btn: 64px;

    --cfab-radius: 100%;
    --cfab-btn-radius: 100%;

    /* подняли выше */
    --cfab-right: 25px;
    --cfab-bottom: 100px;
}

  .contact-fab{
    position: fixed;
    right: var(--cfab-right);
    bottom: var(--cfab-bottom);
    z-index: 9999;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  }

  /* mobile safe-area */
  @supports (padding: max(0px)) {
    .contact-fab{
      right: max(var(--cfab-right), env(safe-area-inset-right));
      bottom: max(var(--cfab-bottom), env(safe-area-inset-bottom));
    }
  }

  /* backdrop */
  .contact-fab__backdrop{
    position: fixed;
    inset: 0;
    background: transparent;
    z-index: 0;
  }

  /* tooltip (по умолчанию скрыт; только hover/focus и только когда закрыто) */
  .contact-fab__hint{
    position: absolute;
    right: calc(var(--cfab-btn) + 12px);
    bottom: 12px;
    background: #fff;
    color: #222;
    padding: 10px 14px;
    border-radius: 999px;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
    font-size: 14px;
    white-space: nowrap;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .2s ease, transform .2s ease;
    z-index: 2;
    pointer-events: none;
  }

  @media (hover:hover) and (pointer:fine){
    .contact-fab:not([data-open="1"]):hover .contact-fab__hint{
      opacity: 1;
      transform: translateY(0);
    }
  }
  .contact-fab:not([data-open="1"]) .contact-fab__btn:focus-visible ~ .contact-fab__hint{
    opacity: 1;
    transform: translateY(0);
  }

  /* menu */
  .contact-fab__menu{
    position: absolute;
    right: 0;
    bottom:-60px;
    display: grid;
    gap: var(--cfab-gap);
    z-index: 2;
    transform-origin: 100% 100%;
    opacity: 1;
    transform: translateY(12px) scale(.96);

    transition: opacity .18s ease, transform .18s ease;
  }


  .contact-fab__item{
    width: var(--cfab-item);
    height: var(--cfab-item);
    border-radius: var(--cfab-radius);
    display: grid;
    place-items: center;
    box-shadow: 0 10px 25px rgba(0,0,0,.18);
    text-decoration: none;
    transition: transform .15s ease;
    background: #eee;
  }
  .contact-fab__item:hover{ transform: translateY(-2px); }

  .contact-fab__item svg{
    width: 36px !important;
    height: 36px  !important;
    fill: #fff;
  }

  .contact-fab__item.wa{ background:#25D366; }
  .contact-fab__item.tg{ background:#2AABEE; }

  /* MAX gradient + png */
  .contact-fab__item.max{
    background: linear-gradient(135deg, #00A3FF, #7B2CFF);
  }
  .contact-fab__img{
    width: 30px;
    height: 30px;
    display: block;
  }

  /* main button */
  .contact-fab__btn{
    width: var(--cfab-btn);
    height: var(--cfab-btn);
    border: 0;
    border-radius: var(--cfab-btn-radius);
    background: #16d2ff;
    box-shadow: 0 14px 35px rgba(0,0,0,.2);
    display: grid;
    place-items: center;
    cursor: pointer;
    position: relative;
    z-index: 2;
    padding: 0;
    -webkit-tap-highlight-color: transparent;
  }

  /* icon swap */
  .contact-fab__icon{
    position: absolute;
    width: 28px;
    height: 28px;
    fill: #1a1a1a;
    transition: opacity .18s ease, transform .18s ease;
  }
  .contact-fab__icon--close{
    opacity: 0;
    transform: scale(.92) translateY(-1px);
  }
  .contact-fab[data-open="1"] .contact-fab__icon--chat{
    opacity: 0;
    transform: scale(.92);
  }
  .contact-fab[data-open="1"] .contact-fab__icon--close{
    opacity: 1;
    transform: scale(1) translateY(0);
  }

  /* ===== Mobile: делаем читабельно и крупно ===== */
  @media (max-width: 768px){
    :root{
      --cfab-gap: 14px;
      --cfab-item: 66px;        /* крупнее */
      --cfab-btn: 70px;         /* крупнее */
      --cfab-radius: 22px;
      --cfab-btn-radius: 24px;

      --cfab-right: 14px;
      --cfab-bottom: 78px;      /* ещё выше на мобиле, чтобы не конфликтовало с браузерной панелью */
    }

    .contact-fab__item svg{ width: 30px; height: 30px; }
    .contact-fab__img{ width: 34px; height: 34px; }

    .contact-fab__icon{ width: 34px; height: 34px; }

    /* tooltip на мобиле обычно не нужен (нет hover) — отключаем, чтобы не было “случайной плашки” */
    .contact-fab__hint{ display:none; }
  }

  /* очень маленькие экраны */
  @media (max-width: 380px){
    :root{
      --cfab-item: 62px;
      --cfab-btn: 64px;
      --cfab-bottom: 100px;
    }
  }

  @media (prefers-reduced-motion: reduce){
    .contact-fab__hint,
    .contact-fab__menu,
    .contact-fab__icon,
    .contact-fab__item{
      transition: none !important;
    }
  }

#sp-bottom1 > div > div:nth-child(2) > div > div > div > div.contact-fab__menu > a.contact-fab__item.max > img{
    width: -webkit-fill-available;
    height: -webkit-fill-available;
    border-radius: 100%;
}

.contact-fab{
  top: 50%;
  bottom: auto !important;
  transform: translateY(-50%);
}

@supports (top: max(0px)) {
  .contact-fab{
    top: max(50%, env(safe-area-inset-top));
  }
}

.contact-fab__btn{
  position: relative;
  overflow: visible;
}

.contact-fab__btn::before,
.contact-fab__btn::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  transform: translate(-50%,-50%) scale(1);
  pointer-events:none;
  opacity: .45;
  z-index: -1; 
  box-shadow: 0 0 0 0 rgba(246,210,92,.55);
  animation: cfabPulse 2.2s ease-out infinite;
}

.contact-fab__btn::after{
  opacity: .30;
  animation-delay: 2.1s;
}

@keyframes cfabPulse{
  0% {
    transform: translate(-50%,-50%) scale(1);
    box-shadow: 0 0 0 0 rgba(246,210,92,.85);
  }
  70% {
    transform: translate(-50%,-50%) scale(1.45);
    box-shadow: 0 0 0 10px rgba(246,210,92,0);
  }
  100% {
    transform: translate(-50%,-50%) scale(1.55);
    box-shadow: 0 0 0 12px rgba(246,210,92,0);
  }
}

.contact-fab[data-open="1"] .contact-fab__btn::before,
.contact-fab[data-open="1"] .contact-fab__btn::after{
  animation: none;
  opacity: 0;
}

@media (prefers-reduced-motion: reduce){
  .contact-fab__btn::before,
  .contact-fab__btn::after{
    animation: none !important;
    opacity: 0 !important;
  }
}


@media (max-width: 768px){
  .contact-fab{
    right: 16px;    
    left: auto;       
    bottom: 300px !important;
    top: auto;
    transform: none;
  }
}

/* === TEXT "ЧАТ" === */
.contact-fab__label{
  position: absolute;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #1a1a1a;

  transition: opacity .18s ease, transform .18s ease;
  user-select: none;
  pointer-events: none;
}

/* скрываем текст при открытии */
.contact-fab[data-open="1"] .contact-fab__label{
  opacity: 0;
  transform: scale(.9);
}

/* close icon */
.contact-fab__icon--close{
  opacity: 0;
  transform: scale(.9);
  transition: opacity .18s ease, transform .18s ease;
}

/* показываем close при открытии */
.contact-fab[data-open="1"] .contact-fab__icon--close{
  opacity: 1;
  transform: scale(1);
}

#sp-bottom1 > div > div:nth-child(2) > div > div > div > div.contact-fab__menu > a.contact-fab__item.max > img
{
border-radius:22px;
}












/* Скрытые служебные поля формы «Заказать бесплатный замер» (модуль 118).
   Заполняются скриптом contactus-shkaf.js: шкаф, фото, источник заявки. */

/* основной способ — прячем обёртку вместе с отступами */
#contactus-lightbox118 .joomly-contactus-div:has(.field4118),
#contactus-lightbox118 .joomly-contactus-div:has(.field5118),
#contactus-lightbox118 .joomly-contactus-div:has(.field6118) {
    display: none !important;
}

/* подстраховка для старых браузеров без :has() */
#contactus-lightbox118 .field4118,
#contactus-lightbox118 .field5118,
#contactus-lightbox118 .field6118 {
    display: none !important;
}














/* Стикер «Диваны» для vezetmebel.ru — вставить в кастомный CSS шаблона / страницы */
.vm-stamp {
  --vm-size: 130px;
  --vm-pink: #ff1a6c;        /* малиновый кнопок сайта */
  --vm-pink-dark: #d90f57;
  --vm-black: #000;
  --vm-top: -45px;
  --vm-left: 130px;

  position: absolute;
  top: var(--vm-top);
  left: var(--vm-left);
  z-index: 5;
  width: var(--vm-size);
  height: var(--vm-size);
  display: block;
  text-decoration: none;
  font-family: inherit;
  transform: rotate(12deg);
  transition: transform .3s ease;
  -webkit-tap-highlight-color: transparent;

  /* сброс того, что может прилететь от слайдера */
  text-shadow: none;
  text-transform: none;
  text-align: center;
  letter-spacing: normal;
  line-height: 1;
  margin: 0;
  padding: 0;
}

/* зубчатая «звезда» — медленно крутится */
.vm-stamp__burst {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  fill: var(--vm-pink);
  filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .35));
  animation: vm-stamp-spin 30s linear infinite;
  transition: fill .3s ease;
}

/* белый центр с пунктиром как у печати */
.vm-stamp__core {
  position: absolute;
  inset: 17%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  border-radius: 50%;
  background: #fff;
  color: var(--vm-black);
  outline: 2px dashed var(--vm-pink);
  outline-offset: -6px;
}
.vm-stamp__sofa { width: 54%; height: auto; display: block; margin-top: 4px; }
.vm-stamp__new {
  font-size: calc(var(--vm-size) * .15);
  font-weight: 900;
  line-height: 1;
  color: var(--vm-pink);
  letter-spacing: .5px;
}
.vm-stamp__new,
.vm-stamp__caption { text-shadow: none; }
.vm-stamp__caption {
  font-size: calc(var(--vm-size) * .07);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0;
}

.vm-stamp:hover,
.vm-stamp:focus-visible { transform: rotate(0deg) scale(1.07); }
.vm-stamp:hover .vm-stamp__burst,
.vm-stamp:focus-visible .vm-stamp__burst { fill: var(--vm-pink-dark); }
.vm-stamp:focus-visible { outline: 3px solid var(--vm-pink); outline-offset: 4px; border-radius: 50%; }

@keyframes vm-stamp-spin { to { transform: rotate(360deg); } }

@media (prefers-reduced-motion: reduce) {
  .vm-stamp__burst { animation: none; }
  .vm-stamp { transition: none; }
}

@media (max-width: 991px) {
  .vm-stamp { --vm-size: 110px; --vm-top: -40px; --vm-left: 110px; }
}
@media (max-width: 575px) {
  .vm-stamp { --vm-size: 90px; --vm-top: -35px; --vm-left: 90px; }
}

/* скрытый стикер (когда круг виден/не виден — переключает JS) */
.vm-stamp[hidden] { display: none !important; }

/* мобильный стикер — когда билдер прячет круг «Без предоплаты».
   Не липнет: стоит абсолютно внутри первого экрана (слайда), левый нижний угол. */
.vm-stamp.vm-stamp--mobile {
  --vm-size: 120px;
  top: auto;
  right: auto;
  left: var(--vm-mob-left, 20px);
  bottom: var(--vm-mob-bottom, 24px);
  z-index: 5;
}