.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes stretch {
  0% {
    color: #006b25;
  }
  100% {
    color: #9b7683;
  }
}
@-webkit-keyframes logoRes {
  from {
    opacity: 0;
    -webkit-transform: scale(0.7);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
  }
}
@keyframes logoRes {
  from {
    opacity: 0;
    transform: scale(0.7);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes showDialog {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes scale {
  0% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1.2);
  }
}
.scale {
  animation-name: scale;
  animation-duration: 1s;
  animation-timing-function: ease-out;
  animation-delay: 0s;
  animation-direction: alternate;
  animation-iteration-count: infinite;
  animation-fill-mode: none;
  animation-play-state: running;
}

@-webkit-keyframes jump {
  0% {
    bottom: 0;
  }
  50% {
    bottom: 10px;
  }
  100% {
    bottom: 0;
  }
}
@keyframes jump {
  0% {
    bottom: 0;
  }
  50% {
    bottom: 10px;
  }
  100% {
    bottom: 0;
  }
}
@keyframes slide-down {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale(0.7);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
}

video {
  width: 100%;
}

audio, canvas, iframe, img, svg, video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover, a:focus {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub.red, sup.red {
  color: #e31e26;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

p {
  font: 400 1.5rem/1.6 "Montserrat", sans-serif;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox], input[type=radio] {
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: 700;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
}

input[type=email], input[type=number], input[type=search], input[type=text], input[type=tel], input[type=url], input[type=password], textarea {
  -webkit-appearance: none;
  appearance: none;
}

ul, ol {
  list-style-position: inside;
}

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

[class^=icon_], [class*=" icon_"], .icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  fill: currentColor;
}

ul li, ol li {
  list-style: none;
}

.dialog_wrapper {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  z-index: 1500;
  padding: 0 1rem;
  overflow-y: auto;
}

.dialog {
  display: none;
  align-items: center;
  max-width: 40rem;
  margin: 4rem auto;
  min-height: calc(100% - 8rem);
}
.dialog.modal_small {
  max-width: 31rem;
}
.dialog.modal_medium {
  max-width: 40rem;
}
.dialog.modal_large {
  max-width: 85rem;
}
.dialog.modal_xlarge {
  max-width: 65vw;
}

.modal_wrap {
  width: 100%;
  padding: 2rem 3rem 2.5rem;
  border-radius: 1.5rem;
  background-color: #ffffff;
  border-top: 0.6rem solid #000000;
  z-index: 1503;
  position: relative;
}
.modal_wrap .icon_close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  color: #000000;
  cursor: pointer;
  font-size: 3rem;
  transition: color 0.3s linear;
}
.modal_wrap .icon_close:focus {
  color: #dc3545;
}
.modal_wrap .icon_close .icon {
  display: block;
}
.modal_wrap .image_wrap {
  position: relative;
  width: 7rem;
  height: 7rem;
  line-height: 7rem;
  margin: -5.5rem auto 0;
  border-radius: 50%;
  text-align: center;
  background-color: #000000;
}
.modal_wrap .image_wrap .icon {
  height: 4rem;
  width: 4rem;
  color: #ffffff;
  animation: zoomIn 0.5s both;
  animation-delay: 0.2s;
}
.modal_wrap .modal_text {
  text-align: center;
  margin: 2rem 0 0.5rem;
}
.modal_wrap .modal_text .modal_title {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  color: #000000;
  text-transform: capitalize;
  margin: 0 auto;
}
.modal_wrap .modal_text p {
  margin: 0.5rem auto;
  max-width: 88%;
}
.modal_wrap .modal_buttons {
  font-size: 0;
  text-align: center;
  margin: 2rem auto 0;
  max-width: 35rem;
}
.modal_wrap .modal_buttons .button {
  width: calc(50% - 1.4rem);
  min-width: unset;
  margin: 0.5rem 0.7rem;
}

.dialog_bg {
  position: fixed;
  left: 0;
  top: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(33, 33, 33, 0.55);
}

.dialog_wrapper.visible, .dialog_bg.visible {
  display: block;
}

.dialog.visible {
  display: flex;
}

.dialog_opened {
  overflow: hidden;
  padding-right: 0.8rem;
}
.dialog_opened.dialog_scrollable_mobile {
  padding-right: 0;
}
.dialog_opened .dialog_bg, .dialog_opened .modal_wrap {
  animation-duration: 0.3s;
  animation-fill-mode: both;
}
.dialog_opened .dialog_bg {
  animation-name: fadeIn;
}
.dialog_opened .modal_wrap {
  animation-name: showDialog;
}

/* common styles */
.modal_status.dialog .modal_wrap {
  color: #000000;
  background-color: #ffffff;
  text-align: center;
}
.modal_status.dialog .dialog_close.icon_close {
  display: none;
}
.modal_status.dialog .modal_text {
  margin: 2rem 0;
}
.modal_status.dialog .modal_text .modal_title {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-transform: initial;
  margin: 0 auto 1rem;
  max-width: 100%;
}
.modal_status.dialog .modal_text p {
  margin: 0.5rem auto;
  max-width: 88%;
}

/* modal_success */
.modal_success.dialog .modal_wrap {
  border-top: 0.6rem solid #28a745;
}
.modal_success.dialog .check_wrap {
  border: 0.2rem solid #28a745;
  overflow: hidden;
  animation: wrap 0.3s ease-in-out forwards;
  animation-delay: 0.3s;
  transform: scale(0);
}
.modal_success.dialog .check_wrap::before, .modal_success.dialog .check_wrap::after {
  content: "";
  position: absolute;
  background-color: #ffffff;
  width: 0;
  height: 0.5rem;
  transform-origin: left;
  animation-duration: 0.3s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
.modal_success.dialog .check_wrap::before {
  top: 3.2rem;
  left: 2.1rem;
  transform: rotate(45deg);
  animation-name: left;
  animation-delay: 0.8s;
}
.modal_success.dialog .check_wrap::after {
  top: 4.2rem;
  left: 2.9rem;
  transform: rotate(-45deg);
  animation-name: right;
  animation-delay: 1.1s;
}

@keyframes wrap {
  0% {
    background-color: transparent;
    transform: scale(0);
  }
  100% {
    background-color: #28a745;
    transform: scale(1);
  }
}
@keyframes left {
  0% {
    width: 0;
  }
  100% {
    width: 1.5rem;
  }
}
@keyframes right {
  0% {
    width: 0;
  }
  100% {
    width: 3rem;
  }
}
/* modal_danger */
.modal_danger.dialog .modal_wrap {
  border-top: 0.6rem solid #dc3545;
}
.modal_danger.dialog .checkmark {
  stroke-width: 2;
  stroke: #fff;
  stroke-miterlimit: 10;
  background-color: transparent;
  box-shadow: inset 0 0 0 #dc3545;
  animation: fill 0.4s ease-in-out 0.4s forwards, scale2 0.3s ease-in-out 0.9s both;
}
.modal_danger.dialog .checkmark_circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #dc3545;
  fill: none;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}
.modal_danger.dialog .checkmark_check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale2 {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0 0 0 5rem #dc3545;
  }
}
/* modal_warning */
.modal_warning.dialog {
  border-top: 0.6rem solid #ffb92e;
}
.modal_warning.dialog .image_wrap {
  background-color: #ffb92e;
}

/* modal_info */
.modal_info.dialog {
  border-top: 0.6rem solid #119eb5;
}
.modal_info.dialog .image_wrap {
  background-color: #119eb5;
}

.dialog .contact_form .modal_text {
  margin: 2rem 0;
}
.dialog .contact_form textarea.input {
  min-height: 7.3rem;
}
.dialog .contact_form .button {
  display: block;
  width: 100%;
  margin: 2rem 0 0;
}
.dialog .contact_form .row_f [class*=col_] {
  width: calc(100% - 3.01rem);
}

.modal_video.dialog {
  padding: 1.5rem;
  border: none;
  width: 65vw;
  max-width: 100%;
  flex-shrink: 0;
}

.modal_video.dialog .video_frame {
  width: 100%;
  height: 40rem;
  border-radius: 1.5rem;
}

.modal_video.dialog .icon_close {
  display: none;
}

.toast_notifications {
  position: fixed;
  bottom: 3rem;
  right: 2rem;
  z-index: 99999999;
}

.toast_notifications .toast, .toast_notifications .column {
  display: flex;
  align-items: center;
}

.toast_notifications .toast {
  width: 40rem;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 1.6rem 1.7rem;
  margin-bottom: 1rem;
  background: #ffffff;
  justify-content: space-between;
  animation: show_toast 0.3s ease forwards;
  box-shadow: 0 0.2rem 0.8rem 0 rgba(99, 99, 99, 0.2);
}

@keyframes show_toast {
  0% {
    transform: translateX(100%);
  }
  40% {
    transform: translateX(-5%);
  }
  80% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-10px);
  }
}
.toast_notifications .toast.hide {
  animation: hide_toast 0.3s ease forwards;
}

@keyframes hide_toast {
  0% {
    transform: translateX(-10px);
  }
  40% {
    transform: translateX(0%);
  }
  80% {
    transform: translateX(-5%);
  }
  100% {
    transform: translateX(calc(100% + 20px));
  }
}
.toast::before {
  position: absolute;
  content: "";
  height: 0.3rem;
  width: 100%;
  bottom: 0;
  left: 0;
  animation: progress 4s linear forwards;
}

@keyframes progress {
  100% {
    width: 0%;
  }
}
.toast.success::before {
  background-color: #43B14B;
}

.toast.error::before {
  background-color: #FF3F0A;
}

.toast.warning::before {
  background-color: #D8CD31;
}

.toast.info::before {
  background-color: #4fc8f4;
}

.toast .column svg {
  width: 2.6rem;
  height: 2.6rem;
  flex-shrink: 0;
}

.toast.success .column svg, .toast.success .column span {
  color: #43B14B;
}

.toast.error .column svg, .toast.error .column span {
  color: #E24D4C;
}

.toast.warning .column svg, .toast.warning .column span {
  color: #D8CD31;
}

.toast.info .column svg, .toast.info .column span {
  color: #4fc8f4;
}

.toast .column span {
  font-size: 1.6rem;
  font-weight: 600;
  margin-left: 1.2rem;
  color: #272727;
  flex-grow: 1;
}

.toast_notifications .removeTOAST {
  display: flex;
  cursor: pointer;
  flex-shrink: 0;
}

.toast_notifications .removeTOAST .icon {
  width: 1.6rem;
  height: 1.6rem;
  color: #000000;
  transition: 0.3s linear;
}

html {
  font-size: 62.5%;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  font-family: "Montserrat", sans-serif;
  font-size: 1.6rem;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-tap-highlight-color: transparent;
  margin: 0;
  padding-top: 0;
}

[disabled], .disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

.clearfix::before, .row::before, .clearfix::after, .row::after {
  content: " ";
  display: table;
}

.clearfix::after, .row::after {
  clear: both;
}

.clearfix, .row {
  *zoom: 1;
}

a {
  text-decoration: none;
  color: inherit;
}

.table {
  display: table;
}

.tableb {
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
}

.trow {
  display: table-row;
}

.tcell {
  display: table-cell;
  vertical-align: middle;
}

.tc {
  text-align: center;
}

.tl {
  text-align: left;
}

.tr {
  text-align: right;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

hr {
  border-top: 1px solid #dbdbdb;
  border-bottom: 0;
  border-right: 0;
  border-left: 0;
  clear: both;
  margin: 2.4rem 0;
}

hr.hr {
  border-top: 1px solid #dbdbdb;
  border-bottom: 0;
  border-right: 0;
  border-left: 0;
  clear: initial;
  margin: 2rem 0;
}

hr.dotted {
  border-style: dotted;
}

hr.dashed {
  border-style: dashed;
}

::-webkit-scrollbar {
  width: 0.8rem;
  height: 0.8rem;
}

::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 1rem;
  border-radius: 1rem;
  -webkit-border-radius: 0;
  border-radius: 0;
}

::-webkit-scrollbar-thumb {
  background: #9b7683;
  -webkit-border-radius: 1rem;
  border-radius: 1rem;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.slick-prev, .slick-next {
  background: none;
  border: none;
  font-size: 0;
  display: block;
  width: 4rem;
  height: 4rem;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 5;
}
.slick-prev::after, .slick-next::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  border-style: solid;
  border-width: 0 0.2rem 0.2rem 0;
  border-color: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.3s linear;
}

.slick-prev {
  left: 1.5rem;
}
.slick-prev::after {
  transform: rotate(135deg);
}

.slick-next {
  right: 1.5rem;
}
.slick-next::after {
  transform: rotate(-45deg);
}

.slick-dots {
  position: absolute;
  left: 50%;
  bottom: 2rem;
  display: flex;
  transform: translate(-50%, 0);
  z-index: 30;
}
.slick-dots li {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 0.5rem;
  background: transparent;
  border: 0.1rem solid #ffffff;
  border-radius: 50%;
  cursor: pointer;
}
.slick-dots li.slick-active {
  background: #ffffff;
}
.slick-dots li:only-child {
  display: none;
}
.slick-dots li button {
  background: transparent;
  border: none;
  font-size: 0;
}

.row {
  margin: 0 -1.5rem;
}
.row:after {
  content: "";
  display: block;
  clear: both;
}
.row .col_1, .row .col_10, .row .col_11, .row .col_12, .row .col_2, .row .col_3, .row .col_4, .row .col_5, .row .col_6, .row .col_7, .row .col_8, .row .col_9 {
  float: left;
  margin: 0 1.5rem;
}
.row .col_1 {
  width: calc(8.3333333333% - 3.01rem);
}
.row .col_2 {
  width: calc(16.6666666667% - 3.01rem);
}
.row .col_3 {
  width: calc(25% - 3.01rem);
}
.row .col_4 {
  width: calc(33.3333333333% - 3.01rem);
}
.row .col_5 {
  width: calc(41.6666666667% - 3.01rem);
}
.row .col_6 {
  width: calc(50% - 3.01rem);
}
.row .col_7 {
  width: calc(58.3333333333% - 3.01rem);
}
.row .col_8 {
  width: calc(66.6666666667% - 3.01rem);
}
.row .col_9 {
  width: calc(75.0000000019% - 3.01rem);
}
.row .col_10 {
  width: calc(83.3333333333% - 3rem);
}
.row .col_11 {
  width: calc(91.6666666667% - 3.01rem);
}
.row .col_12 {
  width: calc(100% - 3.01rem);
}

.row_f {
  margin: 0 -1.5rem;
  display: flex;
  flex-wrap: wrap;
}
.row_f .col_1, .row_f .col_2, .row_f .col_3, .row_f .col_4, .row_f .col_5, .row_f .col_6, .row_f .col_7, .row_f .col_8, .row_f .col_9, .row_f .col_10, .row_f .col_11, .row_f .col_12 {
  margin: 0 1.5rem;
}
.row_f .col_1 {
  width: calc(8.3333333333% - 3.01rem);
}
.row_f .col_2 {
  width: calc(16.6666666667% - 3.01rem);
}
.row_f .col_3 {
  width: calc(25% - 3.01rem);
}
.row_f .col_4 {
  width: calc(33.3333333333% - 3.01rem);
}
.row_f .col_5 {
  width: calc(41.6666666667% - 3.01rem);
}
.row_f .col_6 {
  width: calc(50% - 3.01rem);
}
.row_f .col_7 {
  width: calc(58.3333333333% - 3.01rem);
}
.row_f .col_8 {
  width: calc(66.6666666667% - 3.01rem);
}
.row_f .col_9 {
  width: calc(75.0000000019% - 3.01rem);
}
.row_f .col_10 {
  width: calc(83.3333333333% - 3.01rem);
}
.row_f .col_11 {
  width: calc(91.6666666667% - 3.01rem);
}
.row_f .col_12 {
  width: calc(100% - 3.01rem);
}

.map_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrapper {
  width: 100%;
  max-width: 55rem;
  padding: 0 3rem;
  margin: 0 auto;
  position: relative;
}
.wrapper::after {
  content: "";
  display: table;
  clear: both;
}
.wrapper.wrapper_full {
  max-width: 100%;
}
.wrapper.wrapper_small {
  max-width: 97rem;
}

.icon {
  line-height: 0;
}

.noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

table.table {
  width: 100%;
}

::placeholder {
  color: #4A6572;
  transition: all 0.3s;
}

.form_item {
  margin: 1rem 0 1.5rem;
}
.form_item .pre_input {
  display: block;
  margin: 0 0 0.3rem;
}

.input {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 4rem;
  font-size: 1.5rem;
  padding: 0 1rem;
  border: 0.1rem solid #cfcfcf;
  background-color: #ffffff;
  color: #000000;
  border-radius: 0.3rem;
  transition: box-shadow 0.2s ease-in;
}
.input:focus, .input:active {
  outline-style: none;
  box-shadow: 0 0 0 0.3rem rgba(146, 153, 169, 0.25);
}
.input::placeholder {
  font-family: "Montserrat", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: #4A6572;
  opacity: 1;
  text-overflow: ellipsis;
}
.input:focus::placeholder {
  opacity: 0;
}
.input:-webkit-autofill, .input:-webkit-autofill:focus, .input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 4rem #ffffff inset !important;
  -webkit-text-fill-color: #000000 !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

input[type=number] {
  -moz-appearance: textfield !important;
}

textarea.input {
  min-height: 12.8rem;
  padding-top: 0.5rem;
  resize: none;
}

select.input {
  line-height: normal;
  text-overflow: "";
}

select::-ms-expand {
  display: none;
}

.select_after {
  position: relative;
  display: block;
}
.select_after::after {
  content: "";
  position: absolute;
  top: 1.9rem;
  right: 1rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5rem 0.5rem 0 0.5rem;
  border-color: #808080 transparent transparent transparent;
  pointer-events: none;
}
.select_after select {
  padding: 0 3rem 0 1rem;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.custom_checkbox {
  position: absolute;
  left: -999.9rem;
}
.custom_checkbox + label {
  display: inline-flex;
  align-items: center;
  user-select: none;
  cursor: pointer;
  margin: 0 2rem 1rem 0;
}
.custom_checkbox + label .checkbox_design {
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  border: 0.1rem solid #cfcfcf;
  background-color: #ffffff;
  border-radius: 0.3rem;
  position: relative;
  transform: scale(1);
  transition: all 0.2s ease;
}
.custom_checkbox + label .checkbox_design svg {
  position: absolute;
  top: 0.4rem;
  left: 0.3rem;
  width: 1.2rem;
  height: 1rem;
  fill: none;
  stroke: transparent;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 1.6rem;
  stroke-dashoffset: 1.6rem;
  transition: all 0.3s ease;
  transition-delay: 0.1s;
  transform: translate3d(0, 0, 0);
}
.custom_checkbox + label .checkbox_design::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1;
  border-radius: 50%;
  background-color: #9b7683;
  transform: scale(0);
}
.custom_checkbox + label .checkbox_text {
  display: inline-block;
  font-size: 1.6rem;
  padding: 0 0 0 1rem;
}
.custom_checkbox:checked + label .checkbox_design {
  background-color: #9b7683;
  border-color: #9b7683;
}
.custom_checkbox:checked + label .checkbox_design svg {
  stroke: #ffffff;
  stroke-dashoffset: 0;
}
.custom_checkbox:checked + label .checkbox_design::before {
  opacity: 0;
  transform: scale(3.5);
  transition: all 0.6s ease;
}

.custom_radio_button {
  position: absolute;
  left: -999.9rem;
}
.custom_radio_button + label {
  display: inline-flex;
  align-items: flex-start;
  user-select: none;
  cursor: pointer;
  font-size: 0;
  margin: 0 2rem 1rem 0;
}
.custom_radio_button + label .radio_button_design {
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  border: 0.1rem solid #cfcfcf;
  background-color: #ffffff;
  border-radius: 50%;
  position: relative;
  transition: all 0.2s ease;
}
.custom_radio_button + label .radio_button_design::before, .custom_radio_button + label .radio_button_design::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #9b7683;
  transform: scale(0);
}
.custom_radio_button + label .radio_button_design::before {
  opacity: 1;
}
.custom_radio_button + label .radio_button_text {
  display: inline-block;
  font-size: 1.6rem;
  padding: 0 0 0 1rem;
}
.custom_radio_button:checked + label .radio_button_design {
  border-color: #9b7683;
  border-width: 0.2rem;
}
.custom_radio_button:checked + label .radio_button_design::before, .custom_radio_button:checked + label .radio_button_design::after {
  transition: all 0.6s ease;
}
.custom_radio_button:checked + label .radio_button_design::before {
  opacity: 0;
  transform: scale(3.5);
}
.custom_radio_button:checked + label .radio_button_design::after {
  transform: scale(0.55);
}

.validate_error {
  border: 0.1rem solid #e57373 !important;
}
.validate_error::placeholder {
  color: #e31e26 !important;
}
.validate_error + .icon {
  color: #e57373 !important;
}

textarea.validate_error {
  border: 0.1rem solid #e57373 !important;
}

.input_file.validate_error + .input {
  border: 0.1rem solid #e57373 !important;
}
.input_file.validate_error + .input span {
  color: #e31e26 !important;
}

.validate_checkbox.validate_error {
  border: none !important;
}
.validate_checkbox.validate_error .checkbox + label::before {
  border: 0.1rem solid #e57373 !important;
}
.validate_checkbox.validate_error .custom_checkbox + label .checkbox_design {
  border: 0.1rem solid #e57373 !important;
}

.validate_radio.validate_error {
  border: none !important;
}
.validate_radio.validate_error .radio_button + label::before {
  border: 0.1rem solid #e57373 !important;
}
.validate_radio.validate_error .custom_radio_button + label .radio_button_design {
  border: 0.1rem solid #e57373 !important;
}

.button {
  display: inline-block;
  font: 400 1.4rem/6rem "Montserrat", sans-serif;
  height: 6rem;
  min-width: 7.55em;
  padding: 0 3rem;
  color: #ffffff;
  background-color: #9b7683;
  border: 0.1rem solid #9b7683;
  border-radius: 2rem;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  transition: 0.3s ease-out;
  cursor: pointer;
  user-select: none;
  appearance: none;
  text-transform: uppercase;
}
.button.button_success {
  color: #ffffff;
  background-color: #28a745;
  border-color: #28a745;
}
.button.button_danger {
  color: #ffffff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.button.button_warning {
  color: #000000;
  background-color: #ffb92e;
  border-color: #ffb92e;
}
.button.button_info {
  color: #ffffff;
  background-color: #119eb5;
  border-color: #119eb5;
}
.button.button_disable {
  color: #000000;
  background-color: #cccccc;
  border-color: #cccccc;
}
.button.button_default {
  color: #ffffff;
  background-color: #607487;
  border-color: #607487;
}
.button span {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 3;
}
.button svg {
  display: inline-block;
  vertical-align: middle;
  fill: #ffffff;
  width: 1.25em;
  height: 1.25em;
  margin-right: 0.25em;
}
.button.btn_icon {
  position: relative;
  overflow: hidden;
}
.button.btn_icon svg {
  width: 1.8rem;
  height: 1.8rem;
  fill: #ffffff;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -3rem);
  transition: 0.2s linear;
  margin-right: 0;
}
.button.btn_icon span {
  color: #ffffff;
  display: block;
  transition: 0.2s linear;
}
.button.button_wide {
  padding: 0.9rem 3rem 0.7rem;
  line-height: normal;
  white-space: normal;
  height: auto;
}
.button.button_block {
  display: block;
  width: 100%;
}

.btn_mobile {
  display: none;
}

.aside_form_wrapper {
  margin: 0 0 2rem;
}

.overlay {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.3);
}

.overlay_dark {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.7);
}

section, .section {
  padding: 4rem 0;
}

.pagination {
  padding: 1rem 0;
  user-select: none;
  font-size: 0;
}
.pagination li {
  display: inline-block;
  vertical-align: top;
  padding: 0;
  margin: 0.4rem;
  list-style: none;
}
.pagination li.active a {
  background-color: #9b7683;
  color: #ffffff;
  pointer-events: none;
}
.pagination li.pagination_arrow .icon {
  position: relative;
  top: -0.2rem;
}
.pagination li.pagination_arrow_prev .icon {
  transform: rotate(180deg);
}
.pagination li a {
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
  min-width: 3rem;
  height: 3rem;
  line-height: 3.2rem;
  padding: 0 0.5rem;
  background-color: #000000;
  color: #ffffff;
  text-align: center;
  transition: 0.3s linear;
}

.social {
  font-size: 0;
  line-height: 0;
}
.social .social_block {
  display: inline-block;
  line-height: 0;
  margin: 0 1rem 0 0;
}
.social .social_block:last-child {
  margin: 0;
}
.social .social_block .icon, .social .social_block img {
  width: 2.4rem;
  height: 2.4rem;
  transition: all 0.3s ease-in-out;
}

h1, .h1 {
  font: 400 5rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 2rem;
}

h2, .h2 {
  font: 400 4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 2rem;
}

.title {
  font: 400 4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 2rem;
}

.sub_title {
  font: 400 2.4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 2rem;
}

h3, .h3 {
  font: 600 3rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 0;
}

h4, .h4 {
  font: 500 2.8rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 0;
}

h5, .h5 {
  font: 500 2.6rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 0;
}

h6, .h6 {
  font: 500 2.4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 0;
}

.content h1, .content .h1 {
  font: 400 5rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 2rem;
}
.content h2, .content .h2, .content .title {
  font: 400 4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0 4rem;
}
.content h3, .content .h3 {
  font: 600 3rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1.5rem 0;
}
.content h4, .content .h4 {
  font: 500 2.8rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0;
}
.content h5, .content .h5 {
  font: 500 2.6rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0;
}
.content h6, .content .h6 {
  font: 500 2.4rem/1.2 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0;
}
.content p {
  margin: 0 0 1.5rem;
}
.content ul {
  margin-bottom: 2rem;
}
.content ul li {
  display: table;
  font: 400 2.2rem/1.5 "Montserrat", sans-serif;
  color: #9b7683;
  padding: 0 0 0 2.2rem;
  margin: 1rem 0;
  position: relative;
}
.content ul li p, .content ul li span {
  margin: 0;
}
.content ul li::before {
  content: "";
  display: block;
  position: absolute;
  color: #9b7683;
  background: #9b7683;
  top: 1.5rem;
  left: 0.5rem;
  width: 0.5rem;
  height: 0.5rem;
  border-style: solid;
  border-radius: 50%;
}
.content ol {
  margin-bottom: 2rem;
  counter-reset: li;
}
.content ol li {
  display: table;
  font: 400 1.6rem/1.5 "Montserrat", sans-serif;
  color: #000000;
  padding: 0 0 0 2rem;
  margin: 1rem 0;
  overflow: hidden;
}
.content ol li::before {
  margin-left: -2rem;
  counter-increment: li;
  content: counters(li, ".") ". ";
  color: #000000;
  font-weight: 700;
}
.content blockquote {
  font: 400 1.6rem/1.5 "Montserrat", sans-serif;
  padding: 0 0 0 2rem;
  margin: 0 0 3rem;
  clear: both;
  position: relative;
}
.content blockquote::after {
  content: "";
  display: block;
  width: 1rem;
  top: 0;
  left: 0;
  height: 100%;
  position: absolute;
  background: #9b7683;
}
.content a:not(.button) {
  display: inline-block;
  color: #9b7683;
  font-weight: 600;
  transition: 0.3s linear;
}
.content a:not(.button):focus {
  color: #000000;
}
.content img {
  height: auto !important;
}
.content ul:last-child,
.content ol:last-child,
.content table:last-child,
.content img:last-child,
.content iframe:last-child,
.content p:last-child {
  margin-bottom: 0;
}
.content iframe {
  width: 100%;
  height: 35rem;
}
.content table ul li, .content table ol li {
  display: block;
}
.content .content_table {
  width: 100%;
}
.content .content_table th {
  text-align: left;
  font-weight: 700;
  color: #ffffff;
}
.content .content_table th p {
  font-weight: 700;
  color: #ffffff;
}
.content .content_table tr:nth-child(odd) {
  background-color: #f7f7f7;
}
.content .content_table tr:first-child {
  background-color: #9b7683;
}
.content .content_table th, .content .content_table td {
  padding: 1rem;
}

p {
  font: 400 2.2rem/1.5 "Montserrat", sans-serif;
  color: #9b7683;
  margin: 1rem 0;
}

[data-modals] {
  cursor: pointer;
}

.no_scroll {
  overflow: hidden;
}

.hide_desktop {
  display: none !important;
}

.map {
  padding: 0;
}
.map #map, .map iframe {
  height: 40rem;
  width: 100%;
  max-width: 100%;
}

.marker_info {
  text-align: center;
}

.marker_info p {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.2;
  margin: 0.2rem 0;
}

.marker_info .map_address {
  max-width: 23rem;
  margin: 0 auto;
}

.marker_info p a {
  color: #9b7683;
}

.img {
  display: block;
  width: 100%;
  max-width: 100%;
  position: relative;
  background-size: cover !important;
  background-position: center !important;
}

.page main {
  float: right;
  width: 70%;
}
.page aside {
  width: 25%;
  float: left;
}
.page.right_sidebar main {
  float: left;
  width: 70%;
}
.page.right_sidebar aside {
  width: 25%;
  float: right;
}

.inner_banner {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  position: relative;
  z-index: 2;
}
.inner_banner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.47);
  z-index: -1;
}
.inner_banner .inner_banner_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 24rem;
  padding: 3rem 0;
}
.inner_banner h1, .inner_banner .h1 {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.2;
  color: #ffffff;
  margin: 0;
}

@media only screen and (max-width: 1300px) {
  .inner_banner .inner_banner_wrap {
    height: 20rem;
  }
}
@media only screen and (max-width: 992px) {
  .inner_banner .inner_banner_wrap {
    height: 16rem;
    padding: 2rem 0;
  }
  .inner_banner h1, .inner_banner .h1 {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .inner_banner .inner_banner_wrap {
    height: 14rem;
  }
  .inner_banner h1, .inner_banner .h1 {
    font-size: 3rem;
  }
}
.header {
  display: none;
}

.mobile_phone {
  position: fixed;
  left: 0;
  right: 0;
  bottom: env(safe-area-inset-bottom);
  display: none;
  padding: 0.5rem 0;
  font: 700 3rem "Montserrat", sans-serif;
  background-color: #9b7683;
  color: #ffffff;
  text-align: center;
  user-select: none;
  z-index: 300;
}
.mobile_phone svg {
  width: 2.4rem;
  height: 2.4rem;
}

@media not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) {
    .mobile_phone {
      bottom: 0;
    }
  }
}
.home_bar_space {
  position: fixed;
  left: 0;
  bottom: 0;
  display: none;
  width: 100%;
  height: env(safe-area-inset-bottom);
  background-color: #9b7683;
  z-index: 299;
}

.dark_overlay.nav_opened::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100vh;
  background-color: #000000;
  opacity: 0.8;
  z-index: 2;
}

.main_top {
  position: relative;
  padding: 0;
  z-index: 2;
}
.main_top .banner {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  max-width: 55rem;
  margin: 0 auto;
  position: relative;
  aspect-ratio: 11 / 13;
  z-index: 2;
}
.main_top .main_content {
  position: absolute;
  top: 35%;
  left: 50%;
  width: 100%;
  display: block;
  z-index: 4;
  transform: translate(-50%, -50%);
}
.main_top .main_content .text {
  text-align: center;
  max-width: 100%;
  font-size: 5rem;
  color: #ffffff;
  font-weight: 800;
  line-height: 1.2;
  display: block;
  position: relative;
  text-transform: uppercase;
}
.main_top .main_content .text p, .main_top .main_content .text h1, .main_top .main_content .text h2, .main_top .main_content .text h3 {
  font-size: 5rem;
  line-height: 1.4;
  font-weight: 300;
  text-shadow: -0.2rem 0 1.3rem #000;
  color: #ffffff;
  text-align: left;
  text-transform: uppercase;
}

.bottom_banner_sec {
  padding: 1.4rem 3.7rem;
}
.bottom_banner_sec .wrapper {
  padding: 0;
}
.bottom_banner_sec .button {
  max-width: 100%;
  width: 100%;
}

.greetings_section .wrapper:first-child {
  background: linear-gradient(180deg, #fffdfc, #fff);
}

.donut {
  position: relative;
  margin: 0 0 0 -2rem;
  width: 16rem;
  height: 16rem;
}

.donut_background {
  transform: rotate(135deg);
  transform-origin: center;
}

.donut_circle_value {
  transform: rotate(270deg);
  transform-origin: center;
  transition: all 1s ease-in-out;
}

.donut_value {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 16rem;
  height: 16rem;
  font: 400 3.5rem "Montserrat", sans-serif;
}

.greetings_wrapper {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 5rem;
  padding: 3rem 0;
  margin-top: 3rem;
}

.wrapper:has(.greetings_wrapper):after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("/img/dot.png");
  background-repeat: repeat-x;
  width: 100%;
  height: 1rem;
}

.greetings_donat {
  position: relative;
}

.greetings_donat:after {
  content: "";
  position: absolute;
  top: -3rem;
  right: -3rem;
  background-image: url(/img/dot.png);
  background-repeat: repeat-y;
  width: 1rem;
  height: calc(100% + 8rem);
}

.greetings_donat {
  max-width: 16rem;
  width: 100%;
}

.greetings_text {
  padding-right: 1rem;
}

.cta {
  padding: 0;
}

.cta .wrapper {
  overflow: hidden;
}

.cta .wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3rem;
  height: 100%;
  background-color: #9b7683;
  z-index: -1;
}

.cta .cta_row {
  padding: 4rem 3rem;
  border-top-right-radius: 5rem;
  border-bottom-right-radius: 5rem;
  background-color: #9b7683;
}

.cta .cta_row:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -10rem;
  transform: translate(0, -50%);
  width: 58%;
  height: 83%;
  background-image: url('data:image/svg+xml;utf8,<svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="207.000000pt" height="193.000000pt" viewBox="0 0 207.000000 193.000000" preserveAspectRatio="xMidYMid meet"><g transform="translate(0.000000,193.000000) scale(0.100000,-0.100000)" fill="%23a28490" stroke="none"><path d="M857 1868 c-12 -18 -252 -433 -794 -1373 -12 -22 -23 -43 -23 -47 0-5 78 -8 174 -8 l175 0 35 63 35 62 -103 5 -104 5 307 532 c168 293 309 532 312 533 3 0 27 -38 53 -85 26 -47 51 -85 54 -85 4 0 21 26 39 58 l31 58 -88 153 c-86 149 -89 152 -103 129z"/><path d="M1103 1557 c-46 -79 -83 -150 -83 -157 0 -7 14 -37 31 -67 35 -62 28 -66 94 50 22 37 42 67 46 67 6 0 619 -1055 619 -1065 0 -3 -47 -5 -105 -5 l-104 0 36 -60 35 -60 174 0 c96 0 174 3 174 6 0 11 -824 1434 -830 1434 -3 0 -42 -65 -87 -143z"/><path d="M811 1422 c-30 -53 -144 -251 -253 -439 -109 -189 -198 -345 -198 -348 0 -3 31 -5 69 -5 l69 0 183 320 c101 176 186 320 189 320 3 0 89 -144 190 -320 l185 -320 67 0 c38 0 68 3 68 6 0 10 -504 883 -510 883 -3 0 -29 -43 -59 -97z"/><path d="M1152 1274 l-33 -57 113 -196 c62 -108 145 -252 185 -321 l72 -125 -372 -3 -373 -2 -32 -59 c-17 -32 -32 -61 -32 -65 0 -3 230 -6 511 -6 420 0 510 2 507 13 -5 21 -501 877 -508 877 -3 0 -20 -25 -38 -56z"/><path d="M615 714 c-137 -239 -251 -439 -253 -445 -2 -5 190 -9 507 -9 281 0 511 3 511 6 0 4 -14 31 -31 60 l-30 54 -375 0 c-206 0 -374 2 -374 4 0 2 84 148 186 325 l185 321 -33 60 c-18 33 -35 60 -38 60 -3 -1 -117 -197 -255 -436z"/><path d="M157 288 c-78 -133 -117 -204 -117 -211 0 -4 373 -7 830 -7 642 1 830 4 829 13 0 7 -38 75 -83 152 l-82 140 -73 3 -74 3 23 -38 c12 -21 36 -62 52 -90 l30 -53 -622 0 -622 0 22 38 c12 20 36 61 52 90 l30 52 -70 0 -71 0 -54 -92z"/></g></svg>');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.cta p {
  color: #fff;
  position: relative;
  z-index: 2;
}

.reasons_sec {
  padding: 4rem 0 2rem;
}

.reasons_sec .wrapper:after {
  content: "";
  position: absolute;
  bottom: -2rem;
  left: 0;
  background-image: url(/img/dot.png);
  background-repeat: repeat-x;
  width: 100%;
  height: 1rem;
}
.reasons_sec tr td:first-child{
  padding-right: 5%;
}

.review_sec {
  padding: 2rem 0;
}

.review_dots_container {
  display: flex;
}

.review_dots_container .slick-dots {
  position: static;
  transform: translate(0, 0);
  margin: 1rem auto;
}

.review_dots_container .slick-dots li {
  display: block;
  width: 1rem;
  height: 1rem;
  margin: 0 0.5rem;
  background: #ccc1bc;
  border: 0.1rem solid #ccc1bc;
}

.review_dots_container .slick-dots li.slick-active {
  background: #573222;
  border: 0.1rem solid #573222;
}

.content .p_bordered {
  display: inline-block;
  position: relative;
  padding: 1.5rem 2rem 1.5rem 0;
  border-bottom-right-radius: 3.15rem;
  border-top-right-radius: 3.15rem;
  background-color: #d3e6e5;
}

.content .p_bordered:after {
  content: "";
  position: absolute;
  top: 0;
  left: -3rem;
  width: 3rem;
  height: 100%;
  background-color: #d3e6e5;
}

.button.button_full_width {
  max-width: calc(100% + 6rem);
  width: calc(100% + 6rem);
  margin: 0 0 2rem -3rem;
}

.button.button_full_width > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  line-height: normal;
  justify-content: center;
  align-items: center;
}

.bottom_button {
  text-transform: none;
  margin-top: 0.028rem;
}

footer {
  text-align: center;
  padding: 1.4rem 0;
  background: #000000;
  position: relative;
  z-index: 3;
}
footer p {
  color: #fff;
  font-size: 1.6rem;
  margin: 0;
}
footer a{
  transition: 0.3s;
}
.page_404{min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@-moz-document url-prefix() {}
@media (-ms-high-contrast: none), (-ms-high-contrast: active), (-moz-touch-enabled: 0), (hover: hover) {
  footer a:hover {color: #9b7683;transition: 0.3s;}
  .button:hover {
    color: #9b7683;
    background-color: #ffffff;
    border-color: #9b7683;
  }
  .button:hover svg {
    fill: #9b7683;
  }
  .button.light:hover {
    color: #ffffff;
    background-color: #9b7683;
    border-color: #9b7683;
  }
  .button.light_2:hover {
    color: #ffffff;
    background-color: #000000;
    border-color: #ffffff;
  }
  .button.dark:hover {
    color: #242424;
    background-color: #ffffff;
    border-color: #ffffff;
  }
  .button.button_success:hover {
    color: #ffffff;
    background-color: #24993f;
    border-color: #24993f;
  }
  .button.button_danger:hover {
    color: #ffffff;
    background-color: #c82333;
    border-color: #c82333;
  }
  .button.button_warning:hover {
    color: #000000;
    background-color: #fdae11;
    border-color: #fdae11;
  }
  .button.button_info:hover {
    color: #ffffff;
    background-color: #0890a7;
    border-color: #0890a7;
  }
  .button.button_disable:hover {
    color: #000000;
    background-color: #c3bfbf;
    border-color: #c3bfbf;
  }
  .button.button_default:hover {
    color: #ffffff;
    background-color: #50606e;
    border-color: #50606e;
  }
  .button.btn_icon:hover svg {
    transform: translate(-50%, 0.9rem);
  }
  .button.btn_icon:hover span {
    transform: translateY(3rem);
  }
  .slick-prev:hover::after, .slick-next:hover::after {
    border-color: #ffbf66;
  }
  .dialog .icon_close:hover {
    color: #dc3545;
  }
  .input:-webkit-autofill:hover {
    -webkit-box-shadow: 0 0 0 4rem #ffffff inset !important;
    -webkit-text-fill-color: #000000 !important;
  }
  .custom_checkbox + label:hover .checkbox_design {
    border-color: #9b7683;
  }
  .custom_radio_button + label:hover .radio_button_design {
    border-color: #9b7683;
  }
  .pagination li a:hover {
    background-color: #9b7683;
    color: #ffffff;
  }
  .social .social_block:hover .icon, .social .social_block:hover img {
    padding: 0.2rem;
  }
  .content a:not(.button):hover {
    color: #000000;
  }
  .contact_us_section address a:not(.button):hover {
    color: #000000;
  }
  .toast_notifications .removeTOAST .icon:hover {
    color: #FF3F0A;
  }
}
@media only screen and (max-width: 992px) {
  .hide_desktop {
    display: block !important;
  }
  .hide_tablet {
    display: none !important;
  }
  .page aside, .page main {
    display: block;
    width: 100%;
    float: none;
    margin: 1rem 0;
    padding: 0;
  }
  .map iframe, .map #map {
    height: 30rem;
  }
  .header .top_header {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .hide_mobile {display: none !important;}
  .modal_video.dialog {width: 90vw;}
  .main_top .banner {background-size: 120% 100%;}
}
@media only screen and (max-width: 640px) {
  .greetings_donat:after {
    top: -6.5rem;
    height: calc(100% + 13rem);
  }
}
@media only screen and (max-width: 550px) {
  .reasons_sec .content p[style*="float: left"] {margin: 2rem 2rem 7rem 0!important}
  .bottom_banner_sec .wrapper {padding: 0 3rem;}
  .button.button_full_width {max-width: calc(100%);width: calc(100%);margin: 0 0 2rem;}
  .bottom_banner_sec {padding: 1.4rem 0;}
}
@media only screen and (max-width: 450px) {
  h1, .h1,.content h1, .content .h1 {font-size: 4rem;}
  .main_top .main_content .text p, .main_top .main_content .text h1, .main_top .main_content .text h2, .main_top .main_content .text h3{font-size: 4rem;}
  h2, .h2, .content h2, .content .h2, .content .title {font-size: 3.4rem;}
  h3, .h3, .content h3, .content .h3, .content .title {font-size: 2.4rem;}
  h4, .h4, .content h4, .content .h4, .content .title {font-size: 2.2rem;}
  h5, .h5, .content h5, .content .h5, .content .title {font-size: 1.9rem;}
  h6, .h6, .content h6, .content .h6, .content .title {font-size: 1.7rem;}
  p, .content p, .content ul li{font-size: 1.6rem;}
  .reasons_sec .content p[style*="float: left"] {max-width: 30%!important;margin: 0 2rem 3rem 0 !important;}
  .greetings_donat {max-width: 10rem;}
  .donut {width: 10rem;height: 10rem;}
  .donut_value {width: 10rem;height: 10rem;}
  .donut_value {font-size: 2.4rem;}
  .greetings_wrapper {gap: 4rem;}
  .greetings_donat:after {right: -2rem; top: -4rem;height: calc(100% + 8rem);}

}
@media only screen and (max-width: 400px) {
  .dialog .modal_buttons .button {width: 100%;margin: 0 0 1.5rem;}
  .dialog .modal_buttons .button:last-child {margin: 0;}

}
@media only screen and (max-width: 380px) {
  .greetings_donat:after {right: -2rem; top: -6rem;height: calc(100% + 12rem);}
}

