:root {
  --color-black: #000;
  --color-white: #000;
  --color-gray: #000;
  --color-title: #000; }

.wow {
  visibility: hidden; }

html,
body {
  font-family: "Nunito Sans", sans-serif;
  font-size: 18px;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  scroll-behavior: smooth; }

/* Safari 11+ */
@media not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) and (stroke-color: transparent) {
    select {
      -webkit-appearance: none; } } }

select {
  -webkit-appearance: none; }

strong {
  font-weight: 700; }

.transition {
  -webkit-transition: 0.4s ease-in-out;
  -o-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out; }

h1 {
  font-size: 7.22222rem;
  line-height: 117px;
  margin: 0;
  margin-bottom: 35px;
  letter-spacing: -1px; }
  @media (max-width: 1780px) {
    h1 {
      font-size: 6.94444rem; } }
  @media (max-width: 1600px) {
    h1 {
      font-size: 6.66667rem;
      line-height: 110px; } }
  @media (max-width: 1440px) {
    h1 {
      font-size: 6.11111rem;
      line-height: 0.9; } }
  @media (max-width: 1366px) {
    h1 {
      font-size: 5.55556rem; } }
  @media (max-width: 1200px) {
    h1 {
      font-size: 4.72222rem; } }
  @media (max-width: 1050px) {
    h1 {
      font-size: 4.16667rem; } }
  @media (max-width: 992px) {
    h1 {
      font-size: 3.61111rem; } }
  @media (max-width: 700px) {
    h1 {
      font-size: 3.05556rem; } }
  @media (max-width: 500px) {
    h1 {
      font-size: 2.5rem; } }

h2 {
  font-size: 3.22222rem;
  letter-spacing: -0.4px; }
  @media (max-width: 1600px) {
    h2 {
      font-size: 3.05556rem; } }
  @media (max-width: 1440px) {
    h2 {
      font-size: 2.77778rem; } }
  @media (max-width: 1366px) {
    h2 {
      font-size: 2.55556rem; } }
  @media (max-width: 1200px) {
    h2 {
      font-size: 2.33333rem; } }
  @media (max-width: 1050px) {
    h2 {
      font-size: 2.22222rem; } }
  @media (max-width: 992px) {
    h2 {
      font-size: 2rem; } }
  @media (max-width: 700px) {
    h2 {
      font-size: 1.77778rem; } }
  @media (max-width: 450px) {
    h2 {
      font-size: 1.66667rem; } }

h3 {
  font-size: 2.38889rem; }
  @media (max-width: 1366px) {
    h3 {
      font-size: 2.22222rem; } }
  @media (max-width: 1200px) {
    h3 {
      font-size: 2.11111rem; } }
  @media (max-width: 992px) {
    h3 {
      font-size: 1.88889rem; } }
  @media (max-width: 600px) {
    h3 {
      font-size: 1.77778rem; } }
  @media (max-width: 400px) {
    h3 {
      font-size: 1.66667rem; } }

h4 {
  font-size: 1.44444rem;
  margin-top: 0;
  line-height: 1.2;
  margin-bottom: 30px; }
  @media (max-width: 1440px) {
    h4 {
      font-size: 24px; } }
  @media (max-width: 992px) {
    h4 {
      font-size: 22px;
      margin-bottom: 20px; } }
  @media (max-width: 600px) {
    h4 {
      font-size: 20px;
      margin-bottom: 15px; } }

h5 {
  font-size: 0.83333rem; }

h6 {
  font-size: 0.77778rem; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400; }

p {
  font-size: 0.88889rem;
  line-height: 24px;
  color: #8b8b8b; }
  @media (max-width: 1250px) {
    p {
      font-size: 15px;
      line-height: 22px; } }

.bg_light_violet {
  background-color: #f9f6fc; }

div.wpcf7-validation-errors {
  background-color: #fcf8e3;
  border-color: #faf2cc;
  color: #8a6d3b;
  padding: 10px 10px;
  font-size: 13px; }

span.wpcf7-not-valid-tip {
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #a94442;
  padding: 10px 10px;
  font-size: 13px; }

div.wpcf7-response-output {
  clear: both;
  color: #856404;
  background-color: #fff3cd !important;
  border: none !important;
  padding: 10px 10px !important;
  font-size: 13px; }

div.wpcf7-mail-sent-ng {
  clear: both;
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #a94442;
  padding: 10px 10px;
  font-size: 13px; }

div.wpcf7-mail-sent-ok {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
  clear: both; }

a:active {
  text-decoration: none;
  outline: none; }

a:focus {
  text-decoration: none;
  outline: none; }

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

:focus {
  outline: none; }

:hover {
  outline: none; }

:active {
  outline: none; }

button:focus {
  outline: none; }

img {
  max-width: 100%;
  height: auto; }

@media screen and (min-width: 576px) {
  .container {
    max-width: 768px; } }

@media screen and (min-width: 768px) {
  .container {
    max-width: 965px; } }

@media screen and (min-width: 1200px) {
  .container {
    max-width: 1100px; } }

@media screen and (min-width: 1400px) {
  .container {
    max-width: 1340px; } }

@media screen and (min-width: 1700px) {
  .container {
    max-width: 1600px;
    padding: 0 85px; } }

@media screen and (min-width: 1700px) {
  .container-fluid {
    max-width: 2000px;
    margin: 0 auto; } }

.container-fluid {
  max-width: 2000px;
  margin: 0 auto;
  padding: 0 235px; }
  @media (max-width: 1500px) {
    .container-fluid {
      padding-right: 150px; } }
  @media (max-width: 1366px) {
    .container-fluid {
      padding: 0 200px;
      padding-right: 100px; } }
  @media (max-width: 1100px) {
    .container-fluid {
      padding: 0 180px;
      padding-right: 100px; } }
  @media (max-width: 992px) {
    .container-fluid {
      padding-right: 50px; } }
  @media (max-width: 900px) {
    .container-fluid {
      padding: 0 35px; } }
  @media (max-width: 768px) {
    .container-fluid {
      padding: 0 18px; } }

.container-fluid-padd-left0 {
  padding-left: 0; }

@-webkit-keyframes leftToRightWithBounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px); }
  50% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  75% {
    -webkit-transform: translateX(5px);
            transform: translateX(5px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

@keyframes leftToRightWithBounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px); }
  50% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  75% {
    -webkit-transform: translateX(5px);
            transform: translateX(5px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

.animated.leftToRightWithBounce {
  -webkit-animation-name: leftToRightWithBounce;
          animation-name: leftToRightWithBounce;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  /* or: Xms */
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  /* or: normal */
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  /* or: ease, ease-in, ease-in-out, linear, cubic-bezier(x1, y1, x2, y2) */
  -webkit-animation-fill-mode: backwards;
          animation-fill-mode: backwards;
  /* or: backwards, both, none */
  -webkit-animation-delay: 300ms;
          animation-delay: 300ms;
  /* or: Xms */ }

@-webkit-keyframes rightToLeftWithBounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(80px);
            transform: translateX(80px); }
  50% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  75% {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

@keyframes rightToLeftWithBounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(80px);
            transform: translateX(80px); }
  50% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  75% {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

.animated.rightToLeftWithBounce {
  -webkit-animation-name: rightToLeftWithBounce;
          animation-name: rightToLeftWithBounce;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  /* or: Xms */
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  /* or: normal */
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  /* or: ease, ease-in, ease-in-out, linear, cubic-bezier(x1, y1, x2, y2) */
  -webkit-animation-fill-mode: backwards;
          animation-fill-mode: backwards;
  /* or: backwards, both, none */
  -webkit-animation-delay: 300ms;
          animation-delay: 300ms;
  /* or: Xms */ }

.main_content_offer_item {
  padding: 25px 0 68px; }
  @media (max-width: 1200px) {
    .main_content_offer_item {
      padding: 25px 0 45px; } }
  @media (max-width: 1366px) {
    .main_content_offer_item .container-fluid {
      padding-right: 60px; } }
  @media (max-width: 1200px) {
    .main_content_offer_item .container-fluid {
      padding-right: 35px; } }
  @media (max-width: 768px) {
    .main_content_offer_item .container-fluid {
      padding-right: 18px; } }
  .main_content_offer_item .all_text_offer {
    padding-right: 66px; }
    @media (max-width: 1440px) {
      .main_content_offer_item .all_text_offer {
        padding-right: 45px; } }
    @media (max-width: 1366px) {
      .main_content_offer_item .all_text_offer {
        padding-right: 30px; } }
    @media (max-width: 992px) {
      .main_content_offer_item .all_text_offer {
        padding-right: 0px; } }
    .main_content_offer_item .all_text_offer h2 {
      font-size: 1.44444rem;
      margin-bottom: 10px;
      margin-top: 25px; }
    .main_content_offer_item .all_text_offer ul {
      margin-top: -8px; }
      .main_content_offer_item .all_text_offer ul li {
        padding-top: 6px;
        padding-bottom: 6px; }
  .main_content_offer_item .grid {
    display: grid;
    grid-template-columns: calc(100% - 400px) 400px; }
    @media (max-width: 1650px) {
      .main_content_offer_item .grid {
        grid-template-columns: calc(100% - 360px) 360px; } }
    @media (max-width: 1440px) {
      .main_content_offer_item .grid {
        grid-template-columns: calc(100% - 300px) 300px; } }
    @media (max-width: 1366px) {
      .main_content_offer_item .grid {
        grid-template-columns: calc(100% - 300px) 300px; } }
    @media (max-width: 1200px) {
      .main_content_offer_item .grid {
        grid-template-columns: calc(100% - 270px) 270px; } }
    @media (max-width: 992px) {
      .main_content_offer_item .grid {
        grid-template-columns: 100%; } }
  .main_content_offer_item .sidebar_prices_info {
    margin-top: 0px; }
    .main_content_offer_item .sidebar_prices_info .prices_box,
    .main_content_offer_item .sidebar_prices_info .info_box {
      padding: 35px 50px; }
      @media (max-width: 1366px) {
        .main_content_offer_item .sidebar_prices_info .prices_box,
        .main_content_offer_item .sidebar_prices_info .info_box {
          padding: 35px 35px; } }
      @media (max-width: 1200px) {
        .main_content_offer_item .sidebar_prices_info .prices_box,
        .main_content_offer_item .sidebar_prices_info .info_box {
          padding: 30px 25px; } }
      .main_content_offer_item .sidebar_prices_info .prices_box > p,
      .main_content_offer_item .sidebar_prices_info .info_box > p {
        font-size: 13px;
        line-height: 1.2; }
    .main_content_offer_item .sidebar_prices_info .prices_box {
      background-color: #f9f6fc;
      padding-bottom: 20px; }
      .main_content_offer_item .sidebar_prices_info .prices_box .price_desc {
        margin-bottom: 15px; }
        .main_content_offer_item .sidebar_prices_info .prices_box .price_desc p {
          color: #000;
          margin: 0;
          font-size: 13px;
          line-height: 1.2; }
    .main_content_offer_item .sidebar_prices_info .info_box {
      background-color: #984c90;
      padding: 30px 50px; }
      @media (max-width: 1366px) {
        .main_content_offer_item .sidebar_prices_info .info_box {
          padding: 30px 35px; } }
      @media (max-width: 1200px) {
        .main_content_offer_item .sidebar_prices_info .info_box {
          padding: 30px 25px 25px; } }
      .main_content_offer_item .sidebar_prices_info .info_box > *,
      .main_content_offer_item .sidebar_prices_info .info_box > a {
        color: #fff; }
      .main_content_offer_item .sidebar_prices_info .info_box a {
        color: #fff; }
      .main_content_offer_item .sidebar_prices_info .info_box a[href^="tel:"] {
        text-decoration: none; }
      .main_content_offer_item .sidebar_prices_info .info_box h3 {
        font-family: "Nunito Sans", sans-serif;
        font-size: 22px;
        line-height: 33px;
        margin-top: 17px; }
    .main_content_offer_item .sidebar_prices_info .order_visit_small_title {
      border-bottom: 1px solid #dddddda2; }
      .main_content_offer_item .sidebar_prices_info .order_visit_small_title h4 {
        margin-bottom: 10px; }
  .main_content_offer_item .wp-block-columns.is-layout-flex {
    gap: 20px;
    margin-bottom: 0; }
    @media (max-width: 1650px) {
      .main_content_offer_item .wp-block-columns.is-layout-flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 10px; } }

.single_offer_features_grid.first_visit_features {
  padding-bottom: 28px; }
  @media (max-width: 992px) {
    .single_offer_features_grid.first_visit_features {
      padding-bottom: 0px; } }

.single_offer_page_metamorphosis {
  padding-top: 100px; }
  @media (max-width: 1500px) {
    .single_offer_page_metamorphosis {
      padding-top: 70px;
      padding-bottom: 55px; } }
  @media (max-width: 1200px) {
    .single_offer_page_metamorphosis {
      padding-top: 55px;
      padding-bottom: 45px; } }
  @media (max-width: 950px) {
    .single_offer_page_metamorphosis {
      padding-top: 35px; } }
  @media (max-width: 768px) {
    .single_offer_page_metamorphosis {
      padding-bottom: 25px; } }
  @media (max-width: 450px) {
    .single_offer_page_metamorphosis {
      padding-bottom: 10px; } }
  @media (max-width: 950px) {
    .single_offer_page_metamorphosis .short_desc {
      padding-top: 0px;
      padding-left: 10px; } }
  @media (max-width: 768px) {
    .single_offer_page_metamorphosis .short_desc {
      padding-left: 0px; } }

.single_offer_short_faq.short_faq {
  padding-top: 80px; }
  @media (max-width: 1366px) {
    .single_offer_short_faq.short_faq {
      padding-top: 60px; } }
  @media (max-width: 992px) {
    .single_offer_short_faq.short_faq {
      padding-top: 45px; } }

.swiper_metamorphosis_slider {
  padding: 0;
  min-height: 600px; }
  @media (max-width: 1440px) {
    .swiper_metamorphosis_slider {
      min-height: auto; } }
  .swiper_metamorphosis_slider h3 {
    margin-bottom: 20px; }
  .swiper_metamorphosis_slider .swiper-pagination.swiper-pagination-bullets {
    left: 0;
    bottom: unset;
    position: relative; }
    @media (max-width: 750px) {
      .swiper_metamorphosis_slider .swiper-pagination.swiper-pagination-bullets {
        text-align: center;
        width: 100%; } }
  @media (max-width: 750px) {
    .swiper_metamorphosis_slider .swiper-slide {
      text-align: center; } }
  @media (max-width: 750px) {
    .swiper_metamorphosis_slider .swiper_buttons {
      margin: auto; } }