/* Responsive grid START */
@media screen and (min-width: 300px) and (max-width: 526px) {
  .mobile-off {
    display: none;
  }
  .col-mob-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
 }
  .col-mob-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
 }
  .col-mob-3 {
    max-width: 25%;
    flex: 0 0 25%;    
  }
  .col-mob-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-mob-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-mob-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-mob-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-mob-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
  }
  .col-mob-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-mob-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-mob-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-mob-12 {
    max-width: 100%;
    flex: 100%;
  }

}
@media screen and (min-width: 527px) and (max-width: 767px) {
  .mobile-album-off {
    display: none;
  }
  .col-tab-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
 }
  .col-tab-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
 }
  .col-tab-3 {
    max-width: 25%;
    flex: 0 0 25%;    
  }
  .col-tab-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-tab-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-tab-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-tab-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-tab-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-tab-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-tab-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-tab-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-tab-12 {
    max-width: 100%;
    flex: 100%;
  }

}
@media screen and (min-width: 768px) and (max-width: 992px) {
  .tablet-off {
    display: none;
  }
  .col-tabmd-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
 }
  .col-tabmd-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
 }
  .col-tabmd-3 {
    max-width: 25%;
    flex: 0 0 25%;    
  }
  .col-tabmd-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-tabmd-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-tabmd-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-tabmd-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-tabmd-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-tabmd-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-tabmd-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-tabmd-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-tabmd-12 {
    max-width: 100%;
    flex: 100%;
  }
}
@media screen and (min-width: 993px) and (max-width: 1199px) { 
  .col-tablg-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
 }
  .col-tablg-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
 }
  .col-tablg-3 {
    max-width: 25%;
    flex: 0 0 25%;    
  }
  .col-tablg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-tablg-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-tablg-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-tablg-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-tablg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-tablg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-tablg-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-tablg-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-tablg-12 {
    max-width: 100%;
    flex: 100%;
  }
}
/* Responsive grid END */

@media screen and (min-width: 300px) and (max-width: 526px) {
  h1 {
    font-size: 26px;
    line-height: 32px;
  }
  h2,
  #decolorization h2 {
    font-size: 20px;
    line-height: 26px;
  }
  .custom__button {
    max-width: 220px;
    height: 40px;
    font-size: 16px;
  }
  #header.sticky .top__header a, 
#header.sticky .top__header p, 
#header.sticky .top__header button {
  font-size: 12px;
  line-height: 18px;
}
  #header .col-2 a {
    width: 100%;
  }
  #header .top__header button {
    font-size: 12px;
    line-height: 18px; 
    margin-right: 10px;   
  }
  #teaser-service .col-3 {
    padding: 0;
  }
  #testimonials .container {
    max-width: 320px !important;
  }
  #testimonials .item {
    margin: 20px 0 30px;
    min-height: inherit;
    height: auto;
    box-shadow: 0px 15px 15px -7px rgba(0, 0, 0,0.4);
  }  
  .service__box {
    margin: 0 auto 30px;
  }
  #footer ul {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px dashed var(--color-grey);
  }
  #digits .item .number__count {
    font-size: 60px;
  }
  #digits .item span.title {
    font-size: 22px;
    line-height: 28px;
  }
  #digits .item span.sub-title {
    font-size: 16px;
    line-height: 22px;
  }
  .slider__inner {
    padding-bottom: 20px;
  }
  .slider__inner .slick-list {
    padding: 0 !important;
  }
  .slider__inner .slick-slide.slick-center {
    box-shadow: none;
  }
  .slider__inner .slick-arrow {
    background: var(--color-1);
    border-radius: 8px;
  }
  .video__slider {
    padding: 0;
  }
  .video__slider .item,
  .video__slider .item iframe {
    height: auto !important;
  }
  .inner__banner .item {
    min-height: 420px;
  }


 
  
  
  
} /* END 300-526 */

@media screen and (min-width: 527px) and (max-width: 767px) {
  h1 {
    font-size: 33px;
    line-height: 39px;
  }
  h2 {
    font-size: 27px;
    line-height: 33px;
  }
  .custom__button {
    max-width: 300px;
    height: 45px;
  }
  #header .top__header button {
    margin-right: 10px;
  }
  #teaser-service .col-3 {
    padding-right: 15px;    
  }
  #teaser-service .col-3:nth-child(2n+2) {
  padding-right: 0; 
  }
  #teaser-service .item {
    margin-bottom: 15px;
    min-height: 325px;
  }
  #teaser-service .item h3 {
    padding-left: 56px;
  }
  #protected .item {
    max-width: 248px;
    min-height: 310px;
    margin-top: 30px;
  }
  #testimonials .container {
    max-width: 440px !important;
    padding-bottom: 40px;
  }
  #testimonials .item {
    height: auto;
  }
  .service__box {
    max-width: 93%;
    margin: 0 auto 17px;
    padding: 30px 20px;
  }
  .service__box h5 {
    font-size: 16px;
    line-height: 22px;
  }
  .map {
    margin-top: 30px;
  }
  #our-team .item {
    padding: 0 15px;
  }
  #our-team .item figure {
    height: auto;
  }
  #testimonials .item {
    margin: 0 15px;
  }
  .slider__inner {
    padding-bottom: 30px;
  }
  
} /* END 527-767 */

@media screen and (min-width: 300px) and (max-width: 767px) {
  section,
  article {
    padding: 30px 0;
  }
  .modal-window__content {
    width: 90%;
  }
  .modal-window__close {
    right: 0;
    top: -50px;
  }
  #header .top__header .col-mob-9.flexbox {
    align-items: center;
    padding-left: 20px;
  }
  .team__slider {
    padding-bottom: 40px;
  }  

.slider-banners .slide__item {
    padding: 110px 0 50px;
    min-height: auto;
  }
  .slider-banners .buttons {
    margin-top: 25px;
  }
  .slider-banners .buttons a {
    margin: 0 auto;
  }
  .slider-banners .slick-dots {
    bottom: 20px;
  }
  #feedback-top {
    padding: 40px 0;
  }
  #feedback-top .col-7 {
    padding: 0;
  }
  #feedback-top .container {
    position: relative;
    top: inherit;
    left: inherit;
    transform: none;
    box-shadow: none;
    border: none;
    margin: 0;
    padding: 0 15px;
  }
  #feedback-top form {
    background: #fff;
    padding: 20px;
    max-width: 420px;
    margin: 25px auto 40px;
    border: 1px solid var(--border-color);
    box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.30);
  }
  #protected .flexbox {
    justify-content: center;
  }
  #decolorization h2 span br {
    display: none;
  }
  
  #decolorization figure {
    width: 100%;
    height: 100%;
    max-width: 310px;
    margin-bottom: 25px;
  }
  #decolorization figure img {
    width: 80%;
    height: auto;
    margin: 0 auto;
  }
  .footer__logo {
    margin: 15px auto; !important;
  }
  .bottom__footer {
    text-align: center;
    height: auto;
  }
  .bottom__footer .address,
  .bottom__footer .phone,
  .bottom__footer .trigger {
    text-align: center;
    margin: 0 auto 15px;
  }
  .inner__banner .custom__button {
    margin: 25px auto 0;
  }
  .inner__banner .item {
    padding: 100px 0 30px;
  }
  .breadcrumb > li:not(:last-child) {
    margin-right: 10px;
  }
  .breadcrumb > li {
    padding-right: 15px;
  }
  .breadcrumb > li > a {
    font-size: 14px;
    line-height: 20px;
  }
  .tarif-table li p {
    width: 60%;
  }
  .tarif-table li span {
    width: 40%;
  }
  .tarif-table li {
    align-items: center;
    font-size: 16px;
    line-height: 22px;
  }
  .tarif-table li span {
    font-size: 14px;
    line-height: 20px;
  }
  .tag__filter {
    gap: 8px;
    margin-bottom: 20px;
  }
  .tag__filter li {
    height: 28px;
    font-weight: 400;
    font-size: 12px;
    padding: 0 12px;
    min-width: inherit;
    margin: 0 !important;
  }
   .furtune {
    min-height: 380px;
  }
  #chart {
    width: 310px !important;
    height: 310px !important;
  }
  #chart:after {
    content: none !important;
  }
  #submitsend {
    margin: 0 auto;
  }
  #fortune h2 {
    margin: 0 0 20px;
  }
  #fortune .subtitle {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }
  #contacts form {
    margin: 20px 0;
  }
  #sale .item {
    margin-bottom: 20px;
  }
  .social__widjet {
    width: 30px;
  }
  .social__widjet li > a {
    height: 30px;
  }
  .social__widjet li > a img {
    width: 20px;
  }
  #teaser-service {
  padding: 0;
}

} /* END 300-767 */

@media screen and (min-width: 767px) and (max-width: 992px) {
  h1 {
    font-size: 25px;
    line-height: 31px;
  }
  h2 {
    font-size: 30px;
    line-height: 36px;
  }
  #header .top__header a, 
  #header .top__header p, 
  #header .top__header button {
    font-size: 12px;
  }
  .custom__button {
    max-width: 240px;
    height: 45px;
    font-size: 16;
    font-weight: 500;
  }
  .slider-banners .slide__item {
    padding: 140px 0 100px;
  }
  .slider-banners .col-tabmd-4 {
    padding-left: 20px;
  }
  #header .top__header button {
    margin-right: 20px;
  }
  #teaser-service .col-3:nth-child(4n+4) {
    padding: inherit;
  }
  #teaser-service .col-3 {
    padding-right: 20px !important;    
  }

  #teaser-service .col-3:nth-child(3n+3) {
  padding-right: 0 !important; 
  }
  #teaser-service .item {
    margin-bottom: 20px;
    min-height: 370px;
  }
  #teaser-service .item h3 {
    padding-left: 53px;
    font-size: 14px;
    line-height: 20px;
  }
  #protected .flexbox {
    justify-content: right;
  }
  #testimonials .item {
    margin: 20px 20px 30px;
    height: auto;
  }
  #decolorization figure {
    height: auto;
  }
  #decolorization figure img {
    width: 80%;
  }
  .service__box {
    max-width: 93%;
    margin: 0 auto 17px;
    padding: 30px 20px;
  }
  .service__box h5 {
    font-size: 18px;
    line-height: 24px;
  }
  .map {
    margin-top: 30px;
  }
  .bottom__footer .flexbox {
    font-size: 14px;
  }
  .team__slider {
    padding-bottom: 40px;
  }
  #our-team .item {
    padding: 0 15px;
  }
  #our-team .item figure {
    height: auto;
  }
  #digits .item .number__count {
    font-size: 80px;
  }
  #digits .item span.title {
    font-size: 25px;
    line-height: 31px;
  }
  #digits .item span.sub-title {
    font-size: 16px;
    line-height: 22px;
  }
  .slider__inner {
    padding-bottom: 40px;
  }
  .video__slider .item,
  .video__slider .item iframe {
    height: auto !important;
  }
  .tag__filter {
    gap: 10px;
    margin-bottom: 30px;
  }
  .tag__filter li {
    font-size: 16px;
    font-weight: 300;
    padding: 0 15px;
    height: 40px;
    margin: 0 !important;
    min-width: inherit;
  }
  #header .search .control-field input {
    width: 75%;
  }
  #header .search {
    margin: 0;
  }


} /* END 767-992 */

@media screen and (min-width: 300px) and (max-width: 992px) {
  .burger {
  position: relative;
  display: block;  
  width: 40px;
  height: 40px;  
}
.burger span {
  position: relative;
  margin-top: 9px;
  margin-bottom: 9px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -15px;
  margin-top: -1.5px;
}
.burger span, .burger span::before, .burger span::after {
  display: block;
  width: 30px;
  height: 3px;
  background-color: var(--color-1);
  outline: 1px solid transparent;
  -webkit-transition-property: background-color, -webkit-transform;
  -moz-transition-property: background-color, -moz-transform;
  -o-transition-property: background-color, -o-transform;
  transition-property: background-color, transform;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.burger span::before, .burger span::after {
  position: absolute;
  content: "";
}
.burger span::before {
  top: -9px;
}
.burger span::after {
  top: 9px;
}
.burger.clicked span {
  background-color: transparent;
}
.burger.clicked span::before {
  -webkit-transform: translateY(9px) rotate(45deg);
  -moz-transform: translateY(9px) rotate(45deg);
  -ms-transform: translateY(9px) rotate(45deg);
  -o-transform: translateY(9px) rotate(45deg);
  transform: translateY(9px) rotate(45deg);
}
.burger.clicked span::after {
  -webkit-transform: translateY(-9px) rotate(-45deg);
  -moz-transform: translateY(-9px) rotate(-45deg);
  -ms-transform: translateY(-9px) rotate(-45deg);
  -o-transform: translateY(-9px) rotate(-45deg);
  transform: translateY(-9px) rotate(-45deg);
}
.burger.clicked span:before, .burger.clicked span:after {
  background-color: #ffffff;
}
.burger:hover {
  cursor: pointer;
}

/*  NAV
========================================== */
.nav__burger {
  display: block;
  background: var(--body-color);
  opacity: 85%;
  position: fixed;
  z-index: 98;
  top: 0;
  right: 0;
  height: 100%;
  max-width: 100%;
  width: 100%;
  padding: 90px 40px 60px 30px;
  overflow-y: auto;
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  -moz-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  -o-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
.nav__burger.show {
  -webkit-transform: translateX(0px);
  -moz-transform: translateX(0px);
  -ms-transform: translateX(0px);
  -o-transform: translateX(0px);
  transform: translateX(0px);
}
.nav__burger li > a {
  display: block;
  padding: 10px 0;
  color: #fff;
  font-size: 20px;
}
.nav__burger li.parent {
  position: relative;
}
.nav__burger li.parent .submenu {
  height: 0;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition);
}
.nav__burger li.parent .submenu {
  padding-left: 15px;  
}
.nav__burger li.parent .submenu li > a {
  font-size: 14px;
  padding: 3px 0;
}
.nav__burger li.parent.open .submenu {
  height: auto;
  opacity: 1;
  visibility: visible;
}
.nav__burger li.parent > a {
  position: relative;
  width: 90%;
}
.nav__burger li.parent .arrow {
  position: absolute;
  top: 10px;
  right: 0;
  width: 25px;
  height: 25px;
}
.nav__burger li.parent .arrow i {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%,-50%);
  font-size: 25px;
  color: #fff;
}
.nav__burger .contacts {
  margin-top: 30px;
  padding: 30px 20px;
  border: 2px solid #fff;
  border-radius: 8px;
  color: #fff;
}
.nav__burger .contacts p {
  margin-bottom: 10px;
}
.nav__burger .contacts p,
.nav__burger .contacts a {
  color: #fff;
  font-size: 16px;
  line-height: 22px;
}
.nav__burger .contacts .icon {
  display: inline-block;
  color: var(--color-2);
  margin-right: 20px;
}

/*  OVERLAY
========================================== */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color: #00000075;
  filter: blur(5px);
  opacity: 0;
  visibility: hidden;
  z-index: 95;
}
.overlay.show {
  opacity: 0.8;
  visibility: visible;
}
/* NAV END */

#decolorization .buttons a,
  #decolorization .buttons button {
    margin: 0 auto;
    max-width: 320px;
  }
  #decolorization .buttons a {
    margin-bottom: 20px;
  }
  .service__box span {
    left: 50%;
  }

  #fortune .col-7,
  #fortune .col-5 {
    max-width: 100%;
    flex: 100%;
    padding: 0 15px !important;
  }


} /* END 300-992 */

@media screen and (min-width: 993px) and (max-width: 1199px) {
  #header .top__header a, 
  #header .top__header p, 
  #header .top__header button {
    font-size: 14px;
  }
  
  .navigation li:not(:last-child) {
    margin-right: -15px;
  }
  .slider-banners .col-tabmd-8 {
    padding-right: 20px;
  }
  #teaser-service .col-3:nth-child(4n+4) {
    padding: inherit;
  }
  #teaser-service .col-3 {
    padding-right: 20px !important;    
  }
  #teaser-service .col-3:nth-child(3n+3) {
  padding-right: 0 !important; 
  }
  #protected .item {
    max-width: 310px;
  }
  #testimonials .item {
    margin: 20px 20px 30px;
    height: auto;
  }
  #decolorization .col-tabmd-6:nth-child(2) {
    padding-left: 40px;
  }
  #decolorization .buttons {
    justify-content: space-between;
  }
  #decolorization .buttons a,
  #decolorization .buttons button {
    max-width: 280px;
    margin: 0;
  }
  .service__box {
    max-width: 93%;
    margin: 0 auto 20px;
  }
  .team__slider {
    padding-bottom: 40px;
  }
  #our-team .item {
    padding: 0 15px;
  }
  #our-team .item figure {
    height: auto;
  }
  #header .tel a {
    font-size: 12px;
  }
  #header .top__header span.icon {
    width: 20px;
    font-size: 16px;
  }

} /* END 993-1199 */

@media screen and (max-width: 767px) {
  #header .search {
    margin: 0;
    display: none;
  }
  #header .search.show {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    background: #424242;
    width: 100%;
    height: 100vh;
    z-index: -1;
  }
  #header .search.show .control-field {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%,-50%);
  }
  #header .search .control-field input {
    margin: 0 !important;
  }
  #header .search .control-field {
    max-width: 300px;
  }
  .search-opener {
    position: relative;
    display: block;
    width: 25px;
    height: 25px;
    background-color: var(--color-2);
    border-radius: 50%;
    margin-right: 30px;
    cursor: pointer;
  }
  .search-opener svg {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%,-50%);
    width: 12px;
  }
  .search-opener svg path {
    fill: #fff;
  }
  .close-search {
    display: block;
    position: absolute;
    top: 100px;
    right: 15px;
    width: 40px;
    height: 40px;
    background-color: var(--color-2);
    border-radius: 50%;
  }
  .close-search svg {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%,-50%);
    width: 25px;
  }
  .close-search svg path {
    fill: #fff;
  }
}

@media screen and (max-width: 526px) {
  .search-opener {
    margin-right: 10px;
  }
  #header .top__header button {
    font-size: 9px;
  }
}