  /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

  /* Document
     ========================================================================== */

  /**
   * 1. Correct the line height in all browsers.
   * 2. Prevent adjustments of font size after orientation changes in iOS.
   */

  html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
  }

  /* Sections
     ========================================================================== */

  /**
   * Remove the margin in all browsers.
   */

  body {
    margin: 0;
  }

  /**
   * Render the `main` element consistently in IE.
   */

  main {
    display: block;
  }

  /**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */

  h1 {
    font-size: 2em;
    margin: 0.67em 0;
  }

  /* Grouping content
     ========================================================================== */

  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */

  hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
  }

  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */

  pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
  }

  /* Text-level semantics
     ========================================================================== */

  /**
   * Remove the gray background on active links in IE 10.
   */

  a {
    background-color: transparent;
  }

  /**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */

  abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;
    /* 2 */
  }

  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */

  b,
  strong {
    font-weight: bolder;
  }

  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */

  code,
  kbd,
  samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
  }

  /**
   * Add the correct font size in all browsers.
   */

  small {
    font-size: 80%;
  }

  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */

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

  sub {
    bottom: -0.25em;
  }

  sup {
    top: -0.5em;
  }

  /* Embedded content
     ========================================================================== */

  /**
   * Remove the border on images inside links in IE 10.
   */

  img {
    border-style: none;
  }

  /* Forms
     ========================================================================== */

  /**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */

  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
  }

  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */

  button,
  input {
    /* 1 */
    overflow: visible;
  }

  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */

  button,
  select {
    /* 1 */
    text-transform: none;
  }

  /**
   * Correct the inability to style clickable types in iOS and Safari.
   */

  button,
  [type=button],
  [type=reset],
  [type=submit] {
    -webkit-appearance: button;
  }

  /**
   * Remove the inner border and padding in Firefox.
   */

  button::-moz-focus-inner,
  [type=button]::-moz-focus-inner,
  [type=reset]::-moz-focus-inner,
  [type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }

  /**
   * Restore the focus styles unset by the previous rule.
   */

  button:-moz-focusring,
  [type=button]:-moz-focusring,
  [type=reset]:-moz-focusring,
  [type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }

  /**
   * Correct the padding in Firefox.
   */

  fieldset {
    padding: 0.35em 0.75em 0.625em;
  }

  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */

  legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
  }

  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */

  progress {
    vertical-align: baseline;
  }

  /**
   * Remove the default vertical scrollbar in IE 10+.
   */

  textarea {
    overflow: auto;
  }

  /**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */

  [type=checkbox],
  [type=radio] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
  }

  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */

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

  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */

  [type=search] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
  }

  /**
   * Remove the inner padding in Chrome and Safari on macOS.
   */

  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */

  ::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
  }

  /* Interactive
     ========================================================================== */

  /*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */

  details {
    display: block;
  }

  /*
   * Add the correct display in all browsers.
   */

  summary {
    display: list-item;
  }

  /* Misc
     ========================================================================== */

  /**
   * Add the correct display in IE 10+.
   */

  template {
    display: none;
  }

  /**
   * Add the correct display in IE 10.
   */

  [hidden] {
    display: none;
  }

  @font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Regular.woff2") format("woff2"), url("../fonts/Gilroy-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
  }

  :root {
    --white: #ffffff;
    --text-primary: #02291B;
    --text-secondary: #6F776E;
    --text-caption: #BDBFC2;
    --accent-green: #024C48;
    --accent-green-2: #2A9E97;
    --bg-primmary: #F5F5F5;
    --stroke-primmary: #EBEBEB;
    --blacks-3-a-3335: #3A3335;
    --accent-908-e-8-e: #908E8E;
    --font: "Manrope", sans-serif;
    --font1: "Gilroy";
  }

  * {
    box-sizing: border-box;
    outline: none;
    -webkit-tap-highlight-color: transparent;
  }

  body {
    min-height: 100vh;
    font-family: var(--font);
    font-style: normal;
    font-weight: 400;
    background-color: var(--white);
    overflow-x: hidden;
  }

  body.freeze {
    overflow: hidden;
  }

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

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  ul,
  p {
    margin: 0;
    padding: 0;
  }

  ul {
    list-style: none;
  }

  .container {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1260px;
  }

  button,
  input,
  textarea {
    padding: 0;
    background: none;
    border: 0;
    outline: none;
    font: inherit;
  }

  button {
    cursor: pointer;
  }

  .visually-hidden:not(:focus):not(:active),
  input[type=checkbox].visually-hidden,
  input[type=checked].visually-hidden,
  input[type=radio].visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden;
  }

  button:hover,
  button:active,
  button:focus,
  input:hover,
  input:active,
  input:focus {
    outline: none;
  }

  input:focus::-webkit-input-placeholder,
  textarea:focus::-webkit-input-placeholder {
    color: transparent;
  }

  input:focus:-moz-placeholder,
  textarea:focus:-moz-placeholder {
    color: transparent;
  }

  input:focus::-moz-placeholder,
  textarea:focus::-moz-placeholder {
    color: transparent;
  }

  input:focus:-ms-input-placeholder,
  textarea:focus:-ms-input-placeholder {
    color: transparent;
  }

  input[type=number]::-webkit-outer-spin-button,
  input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

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

  input[type=number]:hover,
  input[type=number]:focus {
    -moz-appearance: number-input;
  }

  input[type=number]::-webkit-inner-spin-button,
  input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  .h2 {
    color: var(--text-primary);
    font-size: 45px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.9px;
  }

  .h2 span {
    color: var(--accent-green-2);
  }

  .header {
    padding: 20px 0;
    background-color: var(--white);
  }

  .header.active {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 200;
    width: 100%;
  }

  .header.active .mobile-menu {
    opacity: 1;
    visibility: visible;
  }

  .header.active .mobile-menu-btn {
    border: 1px solid #8F8F8F;
  }

  .header.active .mobile-menu-btn span.open {
    display: block;
    color: #8F8F8F;
  }

  .header.active .mobile-menu-btn span.close {
    display: none;
  }

  .header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .header .logo {
    width: auto;
    height: auto;
    display: block;
    flex-shrink: 0;
    overflow: hidden;
  }

  .header .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .header .mobile-menu {
    display: flex;
    align-items: center;
    width: 100%;
  }

  .header nav {
    display: flex;
    align-items: center;
    margin: 0 auto;
  }

  .header nav a {
    display: block;
    margin-left: 3.7vw;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    text-decoration: none;
    transition: 0.3s;
  }

  .header nav a:first-of-type {
    margin-left: 0;
  }

  .header nav a:hover {
    color: var(--text-primary);
  }

  .header .tel-link {
    color: var(--text-primary);
    font-size: 24px;
    font-weight: 600;
    line-height: 120%;
    text-decoration: none;
  }

  .header .booking-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 30px;
    margin-left: 50px;
    border-radius: 8px;
    border: 1px solid var(--text-primary);
  }

  .header .booking-btn span {
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .header .mobile-menu-btn {
    display: none;
    justify-content: center;
    align-items: center;
    padding: 10px 15px;
    border-radius: 8px;
    border: 1px solid var(--text-primary);
  }

  .header .mobile-menu-btn span {
    color: var(--accent-green);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
  }

  .header .mobile-menu-btn span.open {
    display: none;
  }

  .overlay {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 199;
    width: 100%;
    height: calc(100dvh - 54px);
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }

  .overlay.active {
    opacity: 1;
    visibility: visible;
  }

  .top {
    padding-bottom: 60px;
  }

  .top.top--long .inner-wrapper {
    padding: 110px 75px;
    background-image: url("../img/img5.jpg");
  }

  .top.top--long .title-wrapper h1 {
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -1.44px;
  }

  .top.top--long .filter {
    margin-top: 60px;
  }

  .top.top--short .inner-wrapper {
    padding: 110px 75px 70px;
    background-image: url("../img/img7.jpg");
  }

  .top.top--short .title-wrapper h1 {
    font-size: 36px;
    line-height: 120%;
    letter-spacing: -0.72px;
  }

  .top .inner-wrapper {
    position: relative;
    z-index: 10;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
    border-radius: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }

  .top .inner-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background: linear-gradient(90deg, rgba(2, 76, 72, 0.6) -37.38%, rgba(2, 41, 27, 0) 128.66%);
  }

  .top .title-wrapper {
    align-self: start;
  }

  .top .title-wrapper h1 {
    color: var(--white);
    font-weight: 700;
  }

  .top .title-wrapper p {
    margin-top: 25px;
    color: var(--white);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .top .weather-wrapper {
    justify-self: end;
    align-self: start;
    display: grid;
    grid-template-columns: 64px 1fr;
    grid-gap: 8px;
    padding: 24px 32px;
    border-radius: 8px;
    background: var(--white);
    box-shadow: 0px 0px 50px 0px rgba(112, 101, 240, 0.2);
  }

  .top .weather-wrapper .img-wrapper {
    grid-row: 1/3;
    align-self: center;
    width: 64px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--bg-primmary);
  }

  .top .weather-wrapper .txt {
    align-self: end;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
  }

  .top .weather-wrapper .temp {
    align-self: start;
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .filter {
    position: relative;
    grid-column: 1/3;
    display: grid;
    /*grid-template-columns: 294px 1fr 210px 166px;*/
    grid-template-columns: 1fr 1fr 166px;
    grid-gap: 20px;
    padding: 20px;
    border-radius: 15px;
    background: #FFF;
  }

  .filter .filter__block {
    position: relative;
    padding: 8px 16px;
    display: grid;
    align-items: center;
    grid-gap: 8px;
    margin: 0;
    height: 64px;
    border: none;
    background: var(--white);
    border: 1px solid #ffffff;
    border-radius: 8px;
    cursor: pointer;
    transition: 0.3s;
  }

  .filter .filter__block.active {
    border: 1px solid #2A9E97;
  }

  .filter .filter__block.active .hide-wrapper {
    margin-top: 5px;
    opacity: 1;
    visibility: visible;
  }

  .filter .filter__block .hide-wrapper {
    position: absolute;
    top: 64px;
    left: -1px;
    z-index: 100;
    width: calc(100% + 2px);
    margin-top: 15px;
    border-radius: 8px;
    border: 1px solid #EBEBEB;
    background: #FFF;
    box-shadow: 3.157px 4.253px 3.178px 0px rgba(77, 113, 113, 0.03), 14.922px 20.104px 12.422px 0px rgba(77, 113, 113, 0.04), 38.741px 52.193px 39px 0px rgba(77, 113, 113, 0.07);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }

  .filter .filter__block.filter__block--date::before {
    bottom: 10px;
    right: 18px;
    width: 14px;
    height: 16px;
    background-image: url("../img/cal.svg");
  }

  .filter .filter__block.filter__block--date .dates {
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .filter .filter__block.filter__block--quantity {
    position: relative;
    margin-left: 20px;
  }

  .filter .filter__block.filter__block--quantity::before {
    bottom: 14px;
    right: 20px;
    width: 10px;
    height: 6px;
    background-image: url("../img/arrow1.svg");
  }

  .filter .filter__block.filter__block--quantity::after {
    content: "";
    position: absolute;
    top: 0;
    left: -21px;
    width: 1px;
    height: 100%;
    background-color: #EBEBEB;
  }

  .filter .filter__block.filter__block--type {
    margin-left: 20px;
  }

  .filter .filter__block.filter__block--type::after {
    content: "";
    position: absolute;
    top: 0;
    left: -21px;
    width: 1px;
    height: 100%;
    background-color: #EBEBEB;
  }

  .filter .filter__block.filter__block--type::before {
    bottom: 14px;
    right: 20px;
    width: 10px;
    height: 6px;
    background-image: url("../img/arrow1.svg");
  }

  .filter .filter__block.filter__block--btn {
    padding: 0;
    border: none;
  }

  .filter .filter__block.filter__block--btn::before {
    content: none;
  }

  .filter .filter__block::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }

  .filter .filter__block .open-btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
  }

  .filter .filter__title {
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .filter .filter__txt {
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .filter label[for=info-date-picker] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer;
  }

  .filter #info-date-picker {
    width: 100%;
    display: none;
    font-size: 14px;
    line-height: 131%;
    color: #4A5746;
    pointer-events: none;
  }

  .filter .info {
    background: #eff2ef;
    border-bottom: 1px solid #C2C7C1;
  }

  .filter .info.active .info__btn::before {
    transform: translateY(-50%) rotateX(180deg);
  }

  .filter .info .info__txt {
    padding: 12px 0 16px;
    margin: 0 14px;
    font-size: 14px;
    line-height: 126.5%;
    color: #242F24;
    border-bottom: 1px solid #C2C7C1;
  }

  .filter .info .info__txt span {
    font-weight: 600;
  }

  .filter .info .info__btn {
    position: relative;
    padding: 13px 14px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    font-size: 17px;
    line-height: 121.5%;
    text-align: center;
    color: #242F24;
  }

  .filter .info .info__btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    width: 20px;
    height: 21px;
    background-image: url("../img/svg/icon69.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transform: translateY(-50%);
  }

  .filter .quantity {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;
  }

  .filter .quantity .quantity__block {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 15px;
    cursor: pointer;
  }

  .filter .quantity .quantity__block:first-of-type {
    border: none;
  }

  .filter .quantity .quantity__txt {
    margin-top: 10px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .filter .quantity .quantity__choose {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }

  .filter .quantity .quantity__choose input {
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .filter .quantity .quantity__choose .quantity__minus-btn {
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
  }

  .filter .quantity .quantity__choose .quantity__plus-btn {
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
  }

  .filter .quantity .btn-wrapper {
    padding: 12px;
    border-top: 1px solid #C2C7C1;
  }

  .filter .quantity .quantity__btn {
    z-index: 10;
    width: 100%;
    height: 47px;
  }

  .filter .quantity .quantity__btn .btn__bg::before {
    background-color: #6A7E64;
  }

  .filter .quantity .quantity__btn .btn__bg::after {
    background-color: #6A7E64;
  }

  .filter .quantity .quantity__btn .btn__txt {
    font-weight: 500;
    font-size: 17px;
    line-height: 120.5%;
    text-align: center;
    color: #DEEADB;
  }

  .filter .type {
    position: absolute;
    left: -1px;
    z-index: 100;
    width: calc(100% + 2px);
    margin-top: 10px;
    max-height: 132px;
    background: #ffffff;
    border: 1px solid #C2C7C1;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    overflow: hidden;
    overflow-y: scroll;
  }

  .filter .type .profiles-list {
    padding: 5px 15px;
  }

  .filter .type .type__input {
    display: none;
  }

  .filter .type .type__input:checked + label::before {
    background-image: url("../img/check.svg");
  }

  .filter .type .type__label {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5px 0 5px 26px;
    cursor: pointer;
  }

  .filter .type .type__label:first-of-type {
    border-top: none;
  }

  .filter .type .type__label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 15px;
    height: 16px;
    background-image: url("../img/check1.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-50%);
  }

  .filter .type .type__name {
    color: #000;
    font-size: 14px;
    line-height: 130%;
    transition: 0.3s;
  }

  .filter .type .type__name:hover {
    color: var(--text-secondary);
  }

  .filter .type .btn-wrapper {
    padding: 12px;
    border-top: 1px solid #C2C7C1;
  }

  .filter .type .type__btn {
    width: 100%;
    height: 47px;
  }

  .filter .type .type__btn .btn__bg::before {
    background-color: #6A7E64;
  }

  .filter .type .type__btn .btn__bg::after {
    background-color: #6A7E64;
  }

  .filter .type .type__btn .btn__txt {
    font-weight: 500;
    font-size: 17px;
    line-height: 120.5%;
    text-align: center;
    color: #DEEADB;
  }

  .filter .filter__btn {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 36px;
    flex-shrink: 0;
    border-radius: 8px;
    background: var(--accent-green);
  }

  .filter .filter__btn span {
    color: var(--white, #FFF);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    white-space: nowrap;
  }

  .filter .filter__btn svg {
    width: 20px;
    height: 20px;
    margin-left: 20px;
  }

  .filter .mobile-title {
    position: absolute;
    top: -52px;
    left: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    height: 36px;
    font-size: 17px;
    line-height: 36px;
    text-align: center;
    color: #242F24;
    background: #C3C8C3;
    border-radius: 20px;
    transform: translateX(-50%);
    white-space: nowrap;
  }

  .filter .filter-overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    height: 100vh;
    background: rgba(36, 47, 36, 0.25);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }

  .filter .filter-overlay.active {
    opacity: 1;
    visibility: visible;
  }

  .air-datepicker {
    min-width: 294px;
    width: 100%;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
  }

  .air-datepicker .air-datepicker--pointer {
    display: none;
  }

  .air-datepicker .air-datepicker--navigation {
    padding: 15px 10px 0;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    border: none;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title {
    color: var(--accent-green);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title:hover {
    background-color: inherit;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title i {
    color: #242F24;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action {
    position: relative;
    width: 16px;
    height: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=next]::before {
    background-image: url("../img/arrow2.svg");
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=prev] {
    transform: rotate(180deg);
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=prev]::before {
    background-image: url("../img/arrow2.svg");
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action::before {
    content: "";
    width: 6px;
    height: 9px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action svg {
    display: none;
  }

  .air-datepicker .air-datepicker--content {
    padding: 0 10px 10px;
    box-sizing: border-box;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--day-names {
    margin: 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--day-name {
    height: 42px;
    color: var(--text-caption);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--cells {
    grid-auto-rows: auto;
    grid-gap: 2px 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell {
    position: relative;
    width: 100%;
    height: 42px;
    align-items: flex-start;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text-caption);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    border-radius: 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell:hover {
    background: #4A5746;
    border: none;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected- {
    color: #DEEADB;
    border-radius: 4px;
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-::before {
    color: #ffffff;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-in-range- {
    color: var(--accent-green);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-range-from-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-range-to- {
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-focus- {
    color: var(--white);
    border-radius: 4px;
    background: var(--accent-green-2);
    cursor: pointer;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-in-range- {
    color: var(--accent-green);
    font-weight: 600;
    background: #F0FAFA;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-range-from-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-range-to- {
    color: var(--white);
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-other-month-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-in-range-.-other-month- {
    color: #242F24;
    background: rgba(74, 87, 70, 0.2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-disabled- {
    color: rgba(36, 47, 36, 0.45);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-disabled-::before {
    content: none !important;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-other-month- {
    color: transparent;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell[data-year="2023"][data-month="2"][data-date="8"],
  .air-datepicker .air-datepicker--content .air-datepicker-cell[data-year="2023"][data-month="2"][data-date="9"] {
    color: #DB1E2F;
    border-bottom: 1px solid #DB1E2F;
    background: rgba(219, 30, 47, 0.15);
    pointer-events: none;
  }

  .air-datepicker .air-datepicker--buttons {
    padding: 12px;
    border-top: 1px solid #C2C7C1;
  }

  .air-datepicker .air-datepicker-nav--action:hover {
    background-color: transparent;
  }

  .air-datepicker .cursor-default {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 47px;
    font-weight: 500;
    font-size: 17px;
    line-height: 120.5%;
    text-align: center;
    color: #DEEADB;
    background: #4A5746;
    border-radius: 0;
  }

  .air-datepicker .mobile-title {
    position: absolute;
    top: -52px;
    left: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    height: 36px;
    font-size: 17px;
    line-height: 36px;
    text-align: center;
    color: #242F24;
    background: #C3C8C3;
    border-radius: 20px;
    transform: translateX(-50%);
    white-space: nowrap;
  }

  .sanatoriums {
    padding: 60px 0;
    background-color: var(--white);
  }

  .sanatoriums .sanatoriums-list {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
  }

  .sanatoriums .sanatoriums-list a {
    display: block;
    text-decoration: none;
  }

  .sanatoriums .sanatoriums-list .img-wrapper {
    position: relative;
    height: 200px;
    border-radius: 8px;
    overflow: hidden;
  }

  .sanatoriums .sanatoriums-list .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .sanatoriums .sanatoriums-list .img-wrapper .rating {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 10;
    padding: 4px 8px;
    display: flex;
    align-items: center;
    border-radius: 4px;
    background: #FFF;
  }

  .sanatoriums .sanatoriums-list .img-wrapper .rating svg {
    width: 12px;
    height: 12px;
  }

  .sanatoriums .sanatoriums-list .img-wrapper .rating p {
    margin-left: 4px;
    color: var(--blacks-3-a-3335);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.14px;
  }

  .sanatoriums .sanatoriums-list .txt-wrapper {
    padding: 25px 20px 15px 20px;
    margin-top: -10px;
    border-radius: 0 0 8px 8px;
    border: 1px solid #EBEBEB;
  }

  .sanatoriums .sanatoriums-list .txt-wrapper h6 {
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .sanatoriums .sanatoriums-list .txt-wrapper p {
    margin-top: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .callback {
    padding: 60px 0;
    background-color: var(--white);
  }

  .callback.callback--1 .inner-wrapper {
    padding: 65px 75px;
    background-image: url("../img/img.jpg");
  }

  .callback.callback--1 form {
    padding: 30px;
    max-width: 520px;
  }

  .callback.callback--2 .inner-wrapper {
    padding: 50px 75px;
    background-image: url("../img/img6.jpg");
  }

  .callback.callback--2 form {
    align-self: start;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
    padding: 40px;
  }

  .callback.callback--2 form .txt-wrapper {
    max-width: 442px;
  }

  .callback.callback--2 form .form-wrapper {
    margin-top: 0;
    justify-self: end;
    max-width: 449px;
  }

  .callback .inner-wrapper {
    position: relative;
    z-index: 10;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;
    overflow: hidden;
  }

  .callback .inner-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(2, 76, 72, 0.6) -37.38%, rgba(2, 41, 27, 0) 128.66%);
  }

  .callback form {
    width: 100%;
    border-radius: 20px;
    background: var(--white);
  }

  .callback form h3 {
    color: var(--text-primary);
    font-size: 38px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.76px;
  }

  .callback form p {
    margin-top: 20px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .callback form .form-wrapper {
    margin-top: 25px;
  }

  .callback form input {
    width: 100%;
    padding: 15px;
    margin-top: 12px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
    border-radius: 5px;
    border: 1px solid var(--stroke-primmary);
    background: var(--bg-primmary);
  }

  .callback form input:first-of-type {
    margin-top: 0;
  }

  .callback form input:focus::placeholder {
    color: transparent;
  }

  .callback form input::placeholder {
    color: rgba(111, 119, 110, 0.65);
  }

  .callback form textarea {
    width: 100%;
    padding: 15px;
    margin-top: 12px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
    border-radius: 5px;
    border: 1px solid var(--stroke-primmary);
    background: var(--bg-primmary);
    resize: none;
  }

  .callback form textarea:focus::placeholder {
    color: transparent;
  }

  .callback form textarea::placeholder {
    color: rgba(111, 119, 110, 0.65);
  }

  .callback form button {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 40px;
    width: 100%;
    margin-top: 25px;
    border-radius: 8px;
    border: 1px solid var(--accent-green);
    background: var(--accent-green);
  }

  .callback form button span {
    color: var(--white);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .faq {
    padding: 60px 0 120px;
    background-color: var(--white);
  }

  .faq .container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
  }

  .faq .faq-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 15px;
  }

  .faq .faq-wrapper .wrapper {
    border-radius: 8px;
    background: var(--bg-primmary);
  }

  .faq .faq-wrapper .wrapper.active {
    background: var(--accent-green-2);
  }

  .faq .faq-wrapper .question {
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    cursor: pointer;
  }

  .faq .faq-wrapper .question.active {
    padding-bottom: 10px;
    color: var(--white);
  }

  .faq .faq-wrapper .question.active + .answer {
    margin-bottom: 15px;
  }

  .faq .faq-wrapper .question.active button {
    transform: rotate(-90deg);
  }

  .faq .faq-wrapper .question.active button svg path {
    fill: var(--white);
  }

  .faq .faq-wrapper .question button {
    width: 24px;
    height: 24px;
    margin-left: 15px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s;
  }

  .faq .faq-wrapper .answer {
    max-height: 0;
    padding: 0 15px;
    color: var(--white);
    font-family: var(--font1);
    font-size: 14px;
    line-height: 130%;
    transition: 0.3s;
    overflow: hidden;
  }

  .search-results {
    padding-bottom: 80px;
    background-color: var(--white);
  }

  .search-results .container {
    display: grid;
    grid-template-columns: 316px 1fr 1fr;
    grid-gap: 30px;
  }

  .search-results .filters .title-wrapper {
    padding: 20px 10px 5px;
    display: none;
    justify-content: space-between;
    align-items: center;
  }

  .search-results .filters .title-wrapper .choices::after {
    top: 50%;
    right: 20px;
    width: 10px;
    height: 6px;
    margin: 0;
    padding: 0;
    background-image: url("../img/arrow1.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    transform: translateY(-50%);
    transition: 0.3s;
  }

  .search-results .filters .title-wrapper .choices .choices__inner {
    padding: 0;
    width: auto;
    display: block;
    min-height: auto;
    border: none;
    border-radius: 8px;
    background: var(--bg-primmary);
  }

  .search-results .filters .title-wrapper .choices .choices__item {
    padding: 15px;
    width: 178px;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    white-space: nowrap;
  }

  .search-results .filters .title-wrapper .choices .choices__list {
    padding: 0;
  }

  .search-results .filters .title-wrapper .choices .choices__list.choices__list--single {
    padding: 0;
  }

  .search-results .filters .title-wrapper .choices .choices__list.choices__list--dropdown {
    z-index: 30;
    margin-top: 0;
    border: none;
    border-radius: 8px;
    box-shadow: 3.157px 4.253px 3.178px 0px rgba(77, 113, 113, 0.03), 14.922px 20.104px 12.422px 0px rgba(77, 113, 113, 0.04), 38.741px 52.193px 39px 0px rgba(77, 113, 113, 0.07);
    overflow: hidden;
    transition: 0.3s;
  }

  .search-results .filters .title-wrapper .choices .choices__list.choices__list--dropdown.is-active {
    margin-top: 10px;
  }

  .search-results .filters .title-wrapper .choices .choices__list.choices__list--dropdown .choices__item {
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    white-space: nowrap;
  }

  .search-results .filters .filter-close-btn {
    display: none;
    align-items: center;
  }

  .search-results .filters .filter-close-btn svg {
    width: 6px;
    height: 10px;
    margin: 0 10px 0 5px;
  }

  .search-results .filters .filter-close-btn span {
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
  }

  .search-results .filters .filter {
    display: none;
  }

  .search-results .filters .filter .filter__block {
    padding: 0;
    grid-gap: 15px;
    height: 70px;
    border: none;
  }

  .search-results .filters .filter .filter__block.filter__block--date .dates {
    padding: 8px 16px;
    font-size: 16px;
    border-radius: 8px;
    border: 1px solid #2A9E97;
  }

  .search-results .filters .filter .filter__block .hide-wrapper {
    top: 70px;
  }

  .search-results .filters .filter .filter__block .filter__txt {
    padding: 8px 16px;
    font-size: 16px;
    border-radius: 8px;
    border: 1px solid #2A9E97;
  }

  .search-results .filters .filters-list {
    display: grid;
    grid-gap: 40px;
  }

  .search-results .filters .filters-list li .checkbox-btn {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .search-results .filters .filters-list li .checkbox-btn.active svg {
    transform: rotate(-90deg);
  }

  .search-results .filters .filters-list li .checkbox-btn svg {
    content: "";
    width: 12px;
    height: 8px;
    background-image: url("../img/arrow.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: 0.3s;
  }

  .search-results .filters .filters-list li h5 {
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    cursor: pointer;
  }

  .search-results .filters .filters-list li h5.active + .checkbox {
    margin-top: 16px;
  }

  .search-results .filters .filters-list li h6 {
    margin-top: 12px;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 600;
    line-height: 130%;
  }

  .search-results .filters .filters-list li .checkbox {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 12px;
    max-height: 0;
    transition: 0.3s;
    overflow: hidden;
  }

  .search-results .filters .filters-list li .checkbox.open {
    max-height: none;
    margin-top: 16px;
    overflow: auto;
  }

  .search-results .filters .filters-list li .checkbox.open + button {
    display: block;
  }

  .search-results .filters .filters-list li .checkbox.open-5 p {
    display: none;
  }

  .search-results .filters .filters-list li .checkbox.open-5 p:nth-of-type(1),
  .search-results .filters .filters-list li .checkbox.open-5 p:nth-of-type(2),
  .search-results .filters .filters-list li .checkbox.open-5 p:nth-of-type(3),
  .search-results .filters .filters-list li .checkbox.open-5 p:nth-of-type(4),
  .search-results .filters .filters-list li .checkbox.open-5 p:nth-of-type(5) {
    display: flex;
  }

  .search-results .filters .filters-list li .checkbox p {
    position: relative;
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
    cursor: pointer;
  }
  .search-results .filters .filters-list li .checkbox label {
    position: relative;
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
    cursor: pointer;
  }

  .search-results .filters .filters-list li .checkbox p::before {
    content: "";
    width: 20px;
    height: 21px;
    margin-right: 12px;
    background-image: url("../img/icon1.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .search-results .filters .filters-list li .checkbox label::before {
    content: "";
    width: 20px;
    height: 21px;
    margin-right: 12px;
    background-image: url("../img/icon1.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .search-results .filters .filters-list li .checkbox p.active::before {
    background-image: url("../img/icon.svg");
  }
  .search-results .filters .filters-list li .checkbox label.active::before {
    background-image: url("../img/icon.svg");
  }

  .search-results .filters .filters-list li .inner {
    max-height: 0;
    overflow: hidden;
    transition: 0.3s;
  }

  .search-results .filters .filters-list li button {
    margin-top: 12px;
    display: none;
    color: var(--text-primary);
    font-size: 14px;
    line-height: 130%;
  }
  .search-results .filters .filters-list li button.js-more {
    display: block;
  }
  .search-results .filters .filters-list li a {
    margin-top: 12px;
    display: none;
    color: var(--text-primary);
    font-size: 14px;
    line-height: 130%;
  }

  .search-results .filters .mobile-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 30;
    width: 100%;
    display: none;
    flex-direction: column;
    padding: 10px;
    background: #FFF;
    box-shadow: 3.157px 4.253px 3.178px 0px rgba(77, 113, 113, 0.03), 14.922px 20.104px 12.422px 0px rgba(77, 113, 113, 0.04), 10px -15px 39px 0px rgba(77, 113, 113, 0.07);
  }

  .search-results .filters .mobile-bottom .add-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 32px;
    color: var(--white);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
    border-radius: 8px;
    border: 1px solid var(--accent-green);
    background: var(--accent-green);
  }

  .search-results .filters .mobile-bottom .del-btn {
    margin-top: 10px;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    text-align: center;
    text-decoration: none;
  }


  .search-results .catalog {
    grid-column: 2/4;
  }

  .search-results .catalog .choices::after {
    top: 50%;
    right: 20px;
    width: 10px;
    height: 6px;
    margin: 0;
    padding: 0;
    background-image: url("../img/arrow1.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    transform: translateY(-50%);
    transition: 0.3s;
  }

  .search-results .catalog .choices .choices__inner {
    padding: 0;
    width: auto;
    display: block;
    min-height: auto;
    border: none;
    border-radius: 8px;
    background: var(--bg-primmary);
  }

  .search-results .catalog .choices .choices__item {
    padding: 15px;
    width: 220px;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    white-space: nowrap;
  }

  .search-results .catalog .choices .choices__list {
    padding: 0;
  }

  .search-results .catalog .choices .choices__list.choices__list--single {
    padding: 0;
  }

  .search-results .catalog .choices .choices__list.choices__list--dropdown {
    z-index: 30;
    margin-top: 0;
    border: none;
    border-radius: 8px;
    box-shadow: 3.157px 4.253px 3.178px 0px rgba(77, 113, 113, 0.03), 14.922px 20.104px 12.422px 0px rgba(77, 113, 113, 0.04), 38.741px 52.193px 39px 0px rgba(77, 113, 113, 0.07);
    overflow: hidden;
    transition: 0.3s;
  }

  .search-results .catalog .choices .choices__list.choices__list--dropdown.is-active {
    margin-top: 10px;
  }

  .search-results .catalog .choices .choices__list.choices__list--dropdown .choices__item {
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    white-space: nowrap;
  }

  .search-results .catalog .mobile-wrapper {
    display: none;
    grid-template-columns: auto 1fr;
    grid-gap: 4px;
    padding: 6px 6px 6px 16px;
    margin-bottom: 20px;
    border-radius: 8px;
    border: 1px solid var(--stroke-primmary);
    background: var(--white);
    box-shadow: 0px 30px 60px -15px rgba(143, 188, 150, 0.15);
  }

  .search-results .catalog .mobile-wrapper .txt {
    align-self: end;
    color: var(--text-secondary);
    font-size: 12px;
    line-height: 130%;
  }

  .search-results .catalog .mobile-wrapper .date {
    align-self: start;
    color: var(--accent-green);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
  }

  .search-results .catalog .mobile-wrapper .filter-open-btn {
    align-self: center;
    grid-column: 2/3;
    grid-row: 1/3;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    margin-left: auto;
    border-radius: 8px;
    border: 1px solid #000;
    background: var(--accent-green);
  }

  .search-results .catalog .title-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--stroke-primmary);
  }

  .search-results .catalog .title-wrapper h3 {
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .search-results .catalog .tags {
    display: flex;
    flex-wrap: wrap;
  }

  .search-results .catalog .tags li {
    margin-top: 10px;
    margin-right: 10px;
    display: flex;
    align-items: center;
    height: 26px;
    padding: 0 8px;
    border-radius: 4px;
    background: var(--bg-primmary, #F5F5F5);
  }

  .search-results .catalog .tags li p:first-of-type {
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .search-results .catalog .tags li p:last-of-type {
    margin-left: 8px;
    color: var(--text-primary);
    font-size: 14px;
    font-weight: 600;
    line-height: 130%;
  }

  .search-results .catalog .tags li svg {
    margin-left: 4px;
  }

  .search-results .catalog .sanatoriums-list {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 40px 30px;
  }

  .search-results .catalog .sanatoriums-list a {
    /*display: block;*/
    text-decoration: none;
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper {
    position: relative;
    height: 248px;
    border-radius: 8px;
    overflow: hidden;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper .rating {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 9;
    padding: 4px 8px;
    display: flex;
    align-items: center;
    border-radius: 4px;
    background: #FFF;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper .rating svg {
    width: 12px;
    height: 12px;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper .rating p {
    margin-left: 4px;
    color: var(--blacks-3-a-3335);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.14px;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper .info {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 10;
    padding: 4px 8px;
    border-radius: 4px;
    background: #FFF;
  }

  .search-results .catalog .sanatoriums-list .img-wrapper .info p {
    color: var(--blacks-3-a-3335);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.14px;
  }

  .search-results .catalog .sanatoriums-list .txt-wrapper {
    padding: 25px 20px 15px 20px;
    margin-top: -10px;
    border-radius: 0 0 8px 8px;
    border: 1px solid #EBEBEB;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .search-results .catalog .sanatoriums-list .txt-wrapper h6 {
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    /*white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;*/
  }

  .search-results .catalog .sanatoriums-list .txt-wrapper p {
    margin-top: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .item {
    padding-bottom: 60px;
    background-color: var(--white);
  }

  .item .container {
    display: flex;
    flex-direction: column;
  }

  .item .title-wrapper {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 8px;
  }

  .item .title-wrapper h1 {
    grid-row: 1/3;
    align-self: center;
    width: 100%;
    color: var(--accent-green);
    font-size: 45px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.9px;
  }

  .item .title-wrapper .rating {
    align-self: end;
    justify-self: end;
    display: flex;
    align-items: center;
  }

  .item .title-wrapper .rating svg {
    width: 12px;
    height: 12px;
    margin-right: 4px;
  }

  .item .title-wrapper .rating p {
    color: var(--blacks-3-a-3335);
    font-size: 14px;
    font-weight: 700;
    line-height: 21px;
    letter-spacing: -0.1px;
  }

  .item .title-wrapper .reviews {
    align-self: start;
    display: block;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
  }

  .item .item-slider {
    position: relative;
    margin-top: 20px;
    overflow: hidden;
  }

  .item .item-slider .swiper-wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 442px;
    grid-template-rows: 375px 115px;
    grid-gap: 20px;
  }

  .item .item-slider .swiper-wrapper .swiper-slide {
    border-radius: 8px;
    overflow: hidden;
  }

  .item .item-slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .item .item-slider .swiper-wrapper .swiper-slide:first-of-type {
    width: 100%;
    grid-row: 1/2;
    grid-column: 1/4;
  }

  .item .item-slider .swiper-wrapper .swiper-slide:nth-of-type(2) {
    grid-column: 4/5;
    grid-row: 1/3;
  }

  .item .item-slider .item-slider-pagination {
    position: absolute;
    bottom: 7px;
    left: 0;
    z-index: 10;
    display: none;
    justify-content: center;
    align-items: center;
  }

  .item .item-slider .item-slider-pagination .swiper-pagination-bullet {
    padding: 0;
    margin: 0;
    width: 10px;
    height: 10px;
    margin-left: 5px;
    border-radius: 50%;
    background-color: var(--white);
    opacity: 0.65;
  }

  .item .item-slider .item-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
  }

  .item .item-slider .item-slider-pagination .swiper-pagination-bullet:first-of-type {
    margin-left: 0;
  }

  .item .advantages {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 46px;
  }

  .item .advantages li {
    display: flex;
    align-items: center;
  }

  .item .advantages .img-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 15px;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: 4px;
    background: rgba(2, 76, 72, 0.08);
  }

  .item .advantages .img-wrapper svg {
    object-fit: contain;
  }

  .item .advantages p {
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 430px;
    grid-gap: 30px;
    margin-top: 60px;
  }

  .item .about #about {
    position: relative;
  }

  .item .about #about #about-check {
    position: absolute;
    top: -40px;
    left: 0;
    width: 1px;
    height: 1px;
    display: block;
  }

  /*.item .about #about p {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
  }*/
  .item .about #about.is-more p + p {
    display: none;
  }
  .item .about #about.is-more p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
  }
  .item .about #about p.more {
    -webkit-line-clamp: none;
    display: block;
    overflow: visible;
  }

  .item .about #about .more-btn {
    margin-top: 8px;
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
    text-decoration-line: underline;
  }

  .item .about #select {
    padding-top: 40px;
    margin-top: 40px;
    border-top: 1px solid #D8D8D8;
  }

  .item .about #select .filter {
    margin-top: 25px;
    padding: 0;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 25px;
  }

  .item .about #select .filter .filter__title {
    margin: 0;
  }

  .item .about #select .filter .filter__txt {
    margin: 0;
  }

  .item .about #select .filter .filter__block {
    border-radius: 8px;
    border: 1px solid var(--stroke-primmary);
    background: var(--white, #FFF);
  }

  .item .about #select .filter .filter__block.filter__block--date {
    grid-column: 1/3;
  }

  .item .about #select .filter .filter__block.filter__block--date .dates {
    margin: 0;
  }

  .item .about #select .filter .filter__block.filter__block--quantity {
    margin-left: 0;
  }

  .item .about #select .filter .filter__block.filter__block--quantity::after {
    content: none;
  }

  .item .about #select .filter .filter__block.filter__block--type {
    margin-left: 0;
  }

  .item .about #select .filter .filter__block.filter__block--type::after {
    content: none;
  }

  .item .about #select .filter .filter__block.filter__block--type .type__name {
    margin: 0;
  }

  .item .about #select .filter .filter__block.filter__block--btn {
    grid-column: 1/3;
    border: none;
  }

  .item .about #select .filter .filter__block .open-btn {
    margin: 0;
  }

  .item .about #select .air-datepicker .air-datepicker--navigation .air-datepicker-nav {
    flex-direction: row;
    background-color: transparent;
  }

  .item .about #select .rooms-list {
    display: grid;
    grid-gap: 28px;
    margin-top: 40px;
  }

  .item .about #select .rooms-list li {
    padding: 20px 30px;
    border-radius: 8px;
    background: #F9F9F9;
  }

  .item .about #select .rooms-list li .room-wrapper {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 220px;
    grid-gap: 30px;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper h6 {
    color: var(--text-primary);
    font-size: 24px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.48px;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags {
    display: flex;
    flex-wrap: wrap;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p {
    display: flex;
    align-items: center;
    padding: 0 8px;
    height: 26px;
    margin-top: 20px;
    margin-right: 20px;
    border-radius: 4px;
    background: #FFF;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p:last-of-type {
    margin-right: 0;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p span {
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.14px;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-gap: 20px 10px;
    margin-top: 20px;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services li {
    padding: 8px 16px;
    width: 100%;
    height: auto;
    border-radius: 4px;
    background: #FFF;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services li p {
    margin: 0;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services li p:first-of-type {
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 130%;
  }

  .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services li p:last-of-type {
    margin-top: 8px;
    color: var(--accent-green);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about #select .rooms-list li .room-wrapper .img-wrapper {
    width: 100%;
    height: 100%;
    min-height: 270px;
    border-radius: 8px;
    overflow: hidden;
  }

  .item .about #select .rooms-list li .room-wrapper .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .item .about #select .rooms-list li .booking-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--stroke-primmary);
  }

  .item .about #select .rooms-list li .booking-wrapper button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 262px;
    padding: 20px 32px;
    border-radius: 8px;
    border: 1px solid var(--accent-green);
    background: var(--accent-green);
  }

  .item .about #select .rooms-list li .booking-wrapper button span {
    color: var(--white);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .price {
    margin: 0;
    color: var(--accent-green);
    font-size: 24px;
    font-weight: 600;
    line-height: 120%;
    text-align: right;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what {
    display: flex;
    align-items: center;
    margin: 0;
    margin-top: 12px;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what span {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 7px;
    padding-left: 12px;
    color: var(--text-secondary);
    font-feature-settings: "clig" off, "liga" off;
    font-size: 14px;
    line-height: 21px;
    letter-spacing: -0.1px;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what span:first-of-type {
    margin-left: 0;
    padding-left: 0;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what span:first-of-type::before {
    content: none;
  }

  .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what span::before {
    content: ".";
    position: absolute;
    top: -5px;
    left: 0;
    display: block;
    margin-right: 7px;
    font-size: 22px;
    font-weight: 800;
    line-height: 100%;
    letter-spacing: -0.092px;
  }

  .item .about .advantages-block {
    padding-top: 40px;
    margin-top: 40px;
    border-top: 1px solid #D8D8D8;
  }

  .item .about .advantages-block .advantages {
    display: flex;
    justify-content: space-between;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 25px;
    margin-top: 25px;
  }

  .item .about .advantages-block .advantages li {
    display: flex;
    align-items: center;
  }

  .item .about .advantages-block .advantages .img-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 15px;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: 4px;
    background: rgba(2, 76, 72, 0.08);
  }

  .item .about .advantages-block .advantages .img-wrapper svg {
    object-fit: contain;
  }

  .item .about .advantages-block .advantages p {
    margin: 0;
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    white-space: nowrap;
  }

  .item .about #profile {
    position: relative;
    margin-top: 40px;
  }

  .item .about #profile #profile-check {
    position: absolute;
    top: -40px;
    left: 0;
    width: 1px;
    height: 1px;
    display: block;
  }

  .item .about #profile .wrapper {
    padding: 30px 45px;
    margin-top: 25px;
    border-radius: 8px;
    background: #F9F9F9;
  }

  .item .about #profile .wrapper:first-of-type {
    margin-top: 40px;
  }

  .item .about #profile .wrapper .title-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .item .about #profile .wrapper h4 {
    color: var(--accent-green);
    font-size: 24px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.48px;
  }

  .item .about #profile .wrapper p {
    margin: 0;
    display: flex;
    align-items: center;
    padding: 8px 12px;
    margin-left: 30px;
    flex-shrink: 0;
    border-radius: 4px;
    background: #FFF;
  }

  .item .about #profile .wrapper p svg {
    width: 20px;
    height: 20px;
    margin-right: 12px;
  }

  .item .about #profile .wrapper p span {
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about #profile .wrapper .grid-block {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 16px 30px;
    margin-top: 15px;
  }

  .item .about #profile .wrapper .inner-wrapper {
    width: 100%;
    padding: 15px 30px;
    border-radius: 8px;
    background: #FFF;
  }

  .item .about #profile .wrapper .inner-wrapper h6 {
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about #profile .wrapper .inner-wrapper ul {
    margin-top: 20px;
  }

  .item .about #profile .wrapper .inner-wrapper ul li {
    margin-left: 24px;
    color: var(--text-primary);
    font-size: 14px;
    line-height: 150%;
    list-style-type: disc;
  }

  .item .about #reviews {
    padding-top: 40px;
    margin-top: 40px;
    border-top: 1px solid #D8D8D8;
  }

  .item .about #reviews .reviews-list {
    margin-top: 25px;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 34px;
  }

  .item .about #reviews .reviews-list.more li {
    display: grid;
  }

  .item .about #reviews .reviews-list li {
    display: none;
  }

  .item .about #reviews .reviews-list li:nth-of-type(1),
  .item .about #reviews .reviews-list li:nth-of-type(2),
  .item .about #reviews .reviews-list li:nth-of-type(3) {
    display: grid;
  }

  .item .about #reviews .more-btn {
    margin-top: 34px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 32px;
    width: 100%;
    color: var(--white);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    border-radius: 8px;
    border: 1px solid var(--accent-green);
    background: var(--accent-green);
  }

  .item .about #reviews .review {
    padding: 20px 28px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    border-radius: 8px;
    background: #F9F9F9;
    overflow: hidden;
  }

  .item .about #reviews .review .date {
    margin: 0;
    align-self: center;
    color: var(--accent-908-e-8-e);
    font-feature-settings: "clig" off, "liga" off;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: -0.1px;
  }

  .item .about #reviews .review .rating {
    justify-self: end;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 6px;
  }

  .item .about #reviews .review .name {
    grid-column: 1/3;
    margin-top: 16px;
    color: var(--accent-green);
    font-size: 24px;
    font-weight: 600;
    line-height: 120%;
  }

  .item .about #reviews .review .txt {
    grid-column: 1/3;
    margin-top: 12px;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
  }

  .item .about #reviews .review .review-slider {
    grid-column: 1/3;
    margin: 25px -30px 0;
    padding: 0 30px;
    width: calc(100% + 60px);
    overflow: hidden;
  }

  .item .about #reviews .review .review-slider .swiper-wrapper {
    display: flex;
  }

  .item .about #reviews .review .review-slider .swiper-wrapper .swiper-slide {
    width: 200px;
    height: 120px;
    display: block !important;
    border-radius: 12px;
    overflow: hidden;
  }

  .item .about #reviews .review .review-slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .item .about #docs {
    padding-top: 40px;
    margin-top: 40px;
    border-top: 1px solid #D8D8D8;
  }

  .item .about h3 {
    color: var(--text-primary);
    font-size: 36px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.72px;
  }

  .item .about p {
    margin-top: 20px;
    color: var(--text-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
  }

  .item .about nav {
    position: sticky;
    top: 30px;
    align-self: start;
    display: flex;
    flex-direction: column;
    padding: 10px 30px;
    background: #F9F9F9;
  }

  .item .about nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    color: var(--accent-green);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    text-decoration: none;
    border-bottom: 1px solid rgba(42, 158, 151, 0.15);
  }

  .item .about nav a:last-of-type {
    border: none;
  }

  .item .about nav a svg {
    margin-right: 6px;
  }

  .footer {
    padding: 40px 0 20px;
    background: var(--text-primary);
  }

  .footer .container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
  }

  .footer .info .logo {
    width: auto;
    height: auto;
    display: block;
    flex-shrink: 0;
    overflow: hidden;
  }

  .footer .info .logo img {
    /* width: initial; */
    height: 100%;
    object-fit: contain;
  }

  .footer .info .tel-link {
    display: block;
    margin-top: 20px;
    color: var(--accent-green-2);
    font-size: 30px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.6px;
    text-decoration: none;
  }

  .footer .info .email-link {
    display: block;
    margin-top: 20px;
    color: var(--white);
    font-size: 30px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -0.6px;
    text-decoration: none;
  }

  .footer nav {
    display: flex;
    align-items: center;
  }

  .footer nav a {
    display: block;
    margin-left: 3.7vw;
    color: var(--text-caption);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    text-decoration: none;
    transition: 0.3s;
  }

  .footer nav a:first-of-type {
    margin-left: 0;
  }

  .footer nav a:hover {
    color: var(--white);
  }

  .footer .official-txt {
    color: var(--text-caption);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    opacity: 0.5;
  }

  .footer .policy-link {
    color: var(--text-caption);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    text-decoration: none;
    opacity: 0.5;
  }

  .booking {
    padding: 30px 0 60px;
  }

  .booking .container {
    display: grid;
    grid-template-columns: 1fr 387px;
    grid-gap: 26px 40px;
  }

  .booking .back-link {
    grid-column: 1/3;
    display: flex;
    align-items: center;
    text-decoration: none;
  }

  .booking .back-link svg {
    width: 6px;
    height: 10px;
    flex-shrink: 0;
    margin-right: 10px;
  }

  .booking .back-link .txt {
    color: rgb(111, 119, 110);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
  }

  .booking .main .main-top {
    display: grid;
    grid-template-columns: 160px 1fr;
    grid-gap: 40px;
  }

  .booking .main .main-top .img-wrapper {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
  }

  .booking .main .main-top .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .booking .main .main-top .txt-wrapper {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 20px 50px;
  }

  .booking .main .main-top .txt-wrapper h2 {
    grid-column: 1/3;
    color: rgb(2, 41, 27);
    font-size: 36px;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: -2%;
  }

  .booking .main .main-top .txt-wrapper p {
    grid-column: 1/3;
    margin: 0;
    color: rgb(2, 41, 27);
    font-size: 16px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .main .main-top .txt-wrapper .reviews {
    display: flex;
    align-items: center;
  }

  .booking .main .main-top .txt-wrapper .reviews .num {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4px 8px;
    flex-shrink: 0;
    margin: 0;
    margin-right: 10px;
    color: rgb(255, 255, 255);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -1%;
    border-radius: 4px;
    background: rgb(42, 158, 151);
  }

  .booking .main .main-top .txt-wrapper .reviews .txt {
    margin: 0;
    color: rgb(111, 119, 110);
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
  }

  .booking .main .main-top .txt-wrapper .address {
    display: flex;
    align-items: center;
  }

  .booking .main .main-top .txt-wrapper .address svg {
    width: 14px;
    height: 20px;
    flex-shrink: 0;
    margin-right: 10px;
  }

  .booking .main .main-top .txt-wrapper .address .txt {
    color: rgb(111, 119, 110);
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
  }

  .booking .main .inner-wrapper {
    position: relative;
    margin-top: 40px;
    padding: 30px;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 16px;
    background: rgb(249, 249, 249);
  }

  .booking .main .inner-wrapper.conditions {
    padding: 30px 30px 0;
  }

  .booking .main .inner-wrapper.conditions .conditions-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li {
    margin-top: 25px;
    padding-top: 25px;
    page-break-inside: avoid;
    break-inside: avoid;
    border-top: 1px solid rgb(235, 235, 235);
  }

  .booking .main .inner-wrapper.conditions .conditions-list li:first-child {
    margin: 0;
    padding: 0;
    border: none;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .title-wrapper {
    display: flex;
    align-items: center;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .title-wrapper svg {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    margin-right: 10px;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .title-wrapper h6 {
    color: rgb(2, 41, 27);
    font-size: 18px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li p {
    margin-top: 10px;
    color: rgb(2, 41, 27);
    font-size: 16px;
    font-weight: 500;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li p span {
    color: rgb(111, 119, 110);
    font-weight: 400;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .inner-list {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 10px 20px;
    margin-top: 10px;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .inner-list p {
    margin: 0;
  }

  .booking .main .inner-wrapper.conditions .conditions-list li .inner-list p:last-child {
    grid-column: 1/3;
  }

  .booking .main .inner-wrapper.details form,
  .booking .main .inner-wrapper.details .order-form {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 15px;
    margin-top: 20px;
  }

  .booking .main .inner-wrapper.details form .inputs-wrapper,
  .booking .main .inner-wrapper.details .order-form .inputs-wrapper{
    grid-column: 1/3;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 15px;
  }

  .booking .main .inner-wrapper.details form input,
  .booking .main .inner-wrapper.details .order-form input{
    width: 100%;
    height: 48px;
    padding: 0 15px;
    color: #000000;
    font-family: Manrope;
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: 0%;
    text-align: left;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 5px;
    background: rgb(255, 255, 255);
  }

  .booking .main .inner-wrapper.details form input:focus,
  .booking .main .inner-wrapper.details .order-form input:focus{
    border: 1px solid rgb(2, 76, 72);
  }

  .booking .main .inner-wrapper.details form input:focus::placeholder,
  .booking .main .inner-wrapper.details .order-form input:focus::placeholder{
    color: transparent;
  }

  .booking .main .inner-wrapper.details form input:valid,
  .booking .main .inner-wrapper.details .order-form input:valid{
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .main .inner-wrapper.details form input::placeholder,
  .booking .main .inner-wrapper.details .order-form input::placeholder{
    color: rgb(111, 119, 110);
  }

  .booking .main .inner-wrapper.details form .check-wrapper,
  .booking .main .inner-wrapper.details .order-form .check-wrapper{
    position: relative;
    grid-column: 1/3;
    margin-top: 5px;
  }

  .booking .main .inner-wrapper.details form .check-wrapper input,
  .booking .main .inner-wrapper.details .order-form .check-wrapper input{
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
  }

  .booking .main .inner-wrapper.details form .check-wrapper input:checked + label::before,
  .booking .main .inner-wrapper.details .order-form .check-wrapper input:checked + label::before{
    background-image: url("../img/icon.svg");
  }

  .booking .main .inner-wrapper.details form .check-wrapper label,
  .booking .main .inner-wrapper.details .order-form .check-wrapper label{
    display: flex;
    align-items: center;
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 500;
    line-height: 130%;
    cursor: pointer;
  }

  .booking .main .inner-wrapper.details form .check-wrapper label::before,
  .booking .main .inner-wrapper.details .order-form .check-wrapper label::before{
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    flex-shrink: 0;
    margin-right: 10px;
    background-image: url("../img/icon4.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .booking .main .inner-wrapper.guests .title-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .booking .main .inner-wrapper.guests .title-wrapper p {
    margin: 0;
    padding: 0;
    color: rgb(111, 119, 110);
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: -0.1px;
  }

  .booking .main .inner-wrapper.guests form,
  .booking .main .inner-wrapper.guests .order-form {
    margin-top: 20px;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid rgb(235, 235, 235);
  }

  .booking .main .inner-wrapper.guests form fieldset,
  .booking .main .inner-wrapper.guests .order-form fieldset{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 15px;
    padding: 0;
    padding-top: 20px;
    margin: 0;
    margin-top: 20px;
    border: none;
    border-top: 1px solid rgb(235, 235, 235);
  }

  .booking .main .inner-wrapper.guests form fieldset:first-of-type,
  .booking .main .inner-wrapper.guests .order-form fieldset:first-of-type{
    margin-top: 0;
  }

  .booking .main .inner-wrapper.guests form fieldset .top-wrapper,
  .booking .main .inner-wrapper.guests .order-form fieldset .top-wrapper{
    grid-column: 1/4;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .booking .main .inner-wrapper.guests form fieldset .top-wrapper p,
  .booking .main .inner-wrapper.guests .order-form fieldset .top-wrapper p{
    margin: 0;
    color: rgb(2, 41, 27);
    font-size: 16px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .main .inner-wrapper.guests form fieldset .top-wrapper .del-btn,
  .booking .main .inner-wrapper.guests .order-form fieldset .top-wrapper .del-btn{
    color: rgb(2, 76, 72);
    font-size: 14px;
    font-weight: 500;
    line-height: 120%;
    border-bottom: 1px solid rgb(2, 76, 72);
  }

  .booking .main .inner-wrapper.guests form fieldset input,
  .booking .main .inner-wrapper.guests .order-form fieldset input{
    width: 100%;
    height: 48px;
    padding: 0 15px;
    color: #000000;
    font-family: Manrope;
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: 0%;
    text-align: left;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 5px;
    background: rgb(255, 255, 255);
  }

  .booking .main .inner-wrapper.guests form fieldset input:focus,
  .booking .main .inner-wrapper.guests .order-form fieldset input:focus{
    border: 1px solid rgb(2, 76, 72);
  }

  .booking .main .inner-wrapper.guests form fieldset input:focus::placeholder,
  .booking .main .inner-wrapper.guests .order-form fieldset input:focus::placeholder{
    color: transparent;
  }

  .booking .main .inner-wrapper.guests form fieldset input:valid,
  .booking .main .inner-wrapper.guests .order-form fieldset input:valid{
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .main .inner-wrapper.guests form fieldset input::placeholder,
  .booking .main .inner-wrapper.guests .order-form fieldset input::placeholder{
    color: rgb(111, 119, 110);
  }

  .booking .main .inner-wrapper.guests form .child-age,
  .booking .main .inner-wrapper.guests .order-form .child-age{
    position: relative;
    z-index: 10;
    width: 100%;
    height: 48px;
    padding: 4px 16px;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 5px;
    background: rgb(255, 255, 255);
  }

  .booking .main .inner-wrapper.guests form .child-age .child-age__txt,
  .booking .main .inner-wrapper.guests .order-form .child-age .child-age__txt{
    margin: 0;
    padding: 0;
    color: rgb(111, 119, 110);
    font-size: 10px;
    font-weight: 400;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.guests form .child-age input,
  .booking .main .inner-wrapper.guests .order-form .child-age input{
    margin-top: 5px;
    padding: 0;
    height: auto !important;
    color: rgb(2, 76, 72);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    border: none !important;
    background-color: transparent;
    cursor: pointer;
  }

  .booking .main .inner-wrapper.guests form .child-age input::-webkit-inner-spin-button,
  .booking .main .inner-wrapper.guests .order-form .child-age input::-webkit-inner-spin-button{
    display: none;
  }

  .booking .main .inner-wrapper.guests form .child-age input::-webkit-calendar-picker-indicator,
  .booking .main .inner-wrapper.guests .order-form .child-age input::-webkit-calendar-picker-indicator{
    cursor: pointer;
    width: 18px;
    height: 18px;
    background-image: url("../img/icon5.svg");
  }

  .booking .main .inner-wrapper.guests form .child-age svg,
  .booking .main .inner-wrapper.guests .order-form .child-age svg{
    position: absolute;
    bottom: 7px;
    right: 15px;
    z-index: -10;
    width: 14px;
    height: 16px;
  }

  .booking .main .inner-wrapper.guests form .child-age-howto,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto{
    position: relative;
  }

  .booking .main .inner-wrapper.guests form .child-age-howto h6,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto h6{
    display: flex;
    align-items: center;
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 400;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.guests form .child-age-howto h6 svg,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto h6 svg{
    width: 12px;
    height: 3px;
    flex-shrink: 0;
    margin-left: 10px;
  }

  .booking .main .inner-wrapper.guests form .child-age-howto p,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto p{
    margin: 0;
    margin-top: 4px;
    display: inline-block;
    color: rgb(2, 76, 72);
    font-size: 12px;
    font-weight: 500;
    line-height: 120%;
    cursor: pointer;
    border-bottom: 1px solid rgb(2, 76, 72);
  }

  .booking .main .inner-wrapper.guests form .child-age-howto p:hover + .age-info,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto p:hover + .age-info{
    opacity: 1;
    visibility: visible;
  }

  .booking .main .inner-wrapper.guests form .child-age-howto .age-info,
  .booking .main .inner-wrapper.guests .order-form .child-age-howto .age-info{
    position: absolute;
    top: 50px;
    left: 0;
    padding: 12px;
    width: 323px;
    color: rgb(111, 119, 110);
    font-size: 12px;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -1%;
    border-radius: 8px;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.15);
    background: rgb(255, 255, 255);
    transition: 0.3s;
    opacity: 0;
    visibility: hidden;
  }

  .booking .main .inner-wrapper.guests .add-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    height: 48px;
    margin-top: 20px;
    border: 1px solid rgb(2, 76, 72);
    border-radius: 8px;
    background: rgb(255, 255, 255);
  }

  .booking .main .inner-wrapper.guests .add-btn svg {
    width: 10px;
    height: 10px;
    flex-shrink: 0;
    margin-right: 10px;
  }

  .booking .main .inner-wrapper.guests .add-btn .txt {
    color: rgb(2, 76, 72);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
  }

  .booking .main .inner-wrapper.additional input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
  }

  .booking .main .inner-wrapper.additional input:checked + label {
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .main .inner-wrapper.additional input:checked + label .icon {
    background-image: url("../img/icon2.svg");
  }

  .booking .main .inner-wrapper.additional label {
    display: block;
    padding: 15px;
    margin-left: 10px;
    width: 220px;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 10px;
    background: rgb(255, 255, 255);
    cursor: pointer;
  }

  .booking .main .inner-wrapper.additional label:first-of-type {
    margin-left: 0;
  }

  .booking .main .inner-wrapper.additional label svg {
    width: 18px;
    height: 18px;
  }

  .booking .main .inner-wrapper.additional label h6 {
    margin-top: 10px;
    color: rgb(2, 41, 27);
    font-size: 14px;
    font-weight: 600;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.additional label p {
    margin-top: 10px;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.payment input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
  }

  .booking .main .inner-wrapper.payment input:checked + label {
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .main .inner-wrapper.payment input:checked + label .icon {
    background-image: url("../img/icon2.svg");
  }

  .booking .main .inner-wrapper.payment label {
    display: block;
    padding: 15px;
    margin-left: 10px;
    width: 220px;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 10px;
    background: rgb(255, 255, 255);
    cursor: pointer;
  }

  .booking .main .inner-wrapper.payment label:first-of-type {
    margin-left: 0;
  }

  .booking .main .inner-wrapper.payment label .icon {
    width: 22px;
    height: 22px;
    background-image: url("../img/icon3.svg");
  }

  .booking .main .inner-wrapper.payment label h6 {
    margin-top: 10px;
    color: rgb(2, 41, 27);
    font-size: 14px;
    font-weight: 700;
    line-height: 130%;
  }

  .booking .main .inner-wrapper.payment label p {
    margin-top: 10px;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
  }

  .booking .main .inner-wrapper h3 {
    color: rgb(2, 41, 27);
    font-size: 24px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .main .inner-wrapper p {
    margin-top: 20px;
    color: rgb(111, 119, 110);
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
  }

  .booking .main .inner-wrapper textarea {
    margin-top: 20px;
    padding: 15px;
    width: 100%;
    min-height: 96px;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 5px;
    background: rgb(255, 255, 255);
    resize: none;
  }

  .booking .main .inner-wrapper textarea:focus {
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .main .inner-wrapper textarea:focus::placeholder {
    color: transparent;
  }

  .booking .main .inner-wrapper textarea::placeholder {
    color: rgb(111, 119, 110);
  }

  .booking .main .inner-wrapper .inputs-wrapper {
    margin-top: 20px;
    display: flex;
  }

  .booking .aside .aside-wrapper {
    position: sticky;
    top: 40px;
  }

  .booking .aside .aside-top {
    padding: 30px;
    border-radius: 16px;
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.1);
    background: rgb(255, 255, 255);
  }

  .booking .aside .aside-top h6 {
    color: rgb(2, 41, 27);
    font-size: 16px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .aside .aside-top ul {
    margin-top: 20px;
  }

  .booking .aside .aside-top ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 15px;
  }

  .booking .aside .aside-top ul li:first-child {
    margin-top: 0;
  }

  .booking .aside .aside-top ul li.with-promo {
    display: none;
  }

  .booking .aside .aside-top ul li.with-promo.success {
    display: flex;
  }

  .booking .aside .aside-top ul li.with-promo p {
    color: #1E9F59;
  }

  .booking .aside .aside-top ul li.with-promo p:first-child {
    color: #1E9F59;
  }

  .booking .aside .aside-top ul li.with-promo p:last-child {
    color: #1E9F59;
  }

  .booking .aside .aside-top ul li p {
    font-size: 14px;
    line-height: 130%;
  }

  .booking .aside .aside-top ul li p:first-child {
    color: rgb(111, 119, 110);
    font-weight: 400;
  }

  .booking .aside .aside-top ul li p:last-child {
    color: rgb(2, 41, 27);
    font-weight: 600;
  }

  .booking .aside .aside-top .add-promo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 15px;
    padding: 5px 10px;
    border: 1px solid rgb(42, 158, 151);
    border-radius: 8px;
  }

  .booking .aside .aside-top .add-promo .txt {
    color: rgb(42, 158, 151);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
  }

  .booking .aside .aside-top .promo-wrapper {
    margin-top: 15px;
    display: none;
    grid-template-columns: auto 1fr;
  }

  .booking .aside .aside-top .promo-wrapper.success {
    display: grid;
  }

  .booking .aside .aside-top .promo-wrapper.not-valid .promo-not-valid {
    display: block;
  }

  .booking .aside .aside-top .promo-wrapper input {
    width: 100%;
    height: 48px;
    padding: 0 15px;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: 0%;
    text-align: left;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 5px;
    background: rgb(245, 245, 245);
  }

  .booking .aside .aside-top .promo-wrapper input:focus {
    border: 1px solid rgb(42, 158, 151);
  }

  .booking .aside .aside-top .promo-wrapper input:focus::placeholder {
    color: transparent;
  }

  .booking .aside .aside-top .promo-wrapper input::placeholder {
    color: rgb(111, 119, 110);
  }

  .booking .aside .aside-top .promo-wrapper button {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    height: 48px;
    flex-shrink: 0;
    margin-left: 10px;
    border: 1px solid rgb(42, 158, 151);
    border-radius: 8px;
  }

  .booking .aside .aside-top .promo-wrapper button .txt {
    color: rgb(42, 158, 151);
    font-size: 14px;
    font-weight: 600;
    line-height: 120%;
  }

  .booking .aside .aside-top .promo-wrapper .promo-not-valid {
    margin-top: 4px;
    grid-column: 1/3;
    display: none;
    color: rgb(221, 35, 35);
    font-size: 12px;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -1%;
  }

  .booking .aside .aside-top .additional-services {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgb(235, 235, 235);
  }

  .booking .aside .aside-top .total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgb(235, 235, 235);
  }

  .booking .aside .aside-top .total p {
    color: rgb(2, 41, 27);
    font-size: 20px;
    font-weight: 600;
  }

  .booking .aside .aside-top .total p:first-child {
    font-size: 14px;
    line-height: 130%;
  }

  .booking .aside .aside-top .total p:last-child {
    font-size: 20px;
    line-height: 120%;
  }

  .booking .aside .aside-top .pay-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 20px;
    padding: 20px 36px;
    text-decoration: none;
    border-radius: 8px;
    background: rgb(2, 76, 72);
  }

  .booking .aside .aside-top .pay-btn .txt {
    color: rgb(255, 255, 255);
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
  }

  .booking .aside .aside-top .small-txt {
    margin-top: 20px;
    color: rgb(111, 119, 110);
    font-size: 10px;
    font-weight: 500;
    line-height: 140%;
  }

  .booking .aside .aside-top .small-txt a {
    color: #2A9E97;
  }

  .booking .aside .aside-bottom {
    margin-top: 44px;
    padding: 30px;
    border: 1px solid rgb(235, 235, 235);
    border-radius: 16px;
    background: rgb(255, 255, 255);
  }

  .booking .aside .aside-bottom h6 {
    color: rgb(2, 41, 27);
    font-size: 16px;
    font-weight: 700;
    line-height: 120%;
  }

  .booking .aside .aside-bottom .fee {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
  }

  .booking .aside .aside-bottom .fee p {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    color: rgb(111, 119, 110);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    border: none;
    cursor: pointer;
  }

  .booking .aside .aside-bottom .fee p:hover + .info-wrapper {
    opacity: 1;
    visibility: visible;
  }

  .booking .aside .aside-bottom .fee svg {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-left: 5px;
    cursor: pointer;
  }

  .booking .aside .aside-bottom .fee .semibold {
    margin-left: auto;
    color: rgb(2, 41, 27);
    font-size: 14px;
    font-weight: 600;
    line-height: 130%;
  }

  .booking .aside .aside-bottom .fee .info-wrapper {
    position: absolute;
    top: 25px;
    left: 0;
    z-index: 10;
    padding: 16px;
    width: 327px;
    border-radius: 8px;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.15);
    background: rgb(255, 255, 255);
    opacity: 0;
    visibility: hidden;
  }

  .booking .aside .aside-bottom .fee .info-wrapper h6 {
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 500;
    line-height: 130%;
  }

  .booking .aside .aside-bottom .fee .info-wrapper p {
    margin-top: 8px;
    color: rgb(111, 119, 110);
    font-size: 12px;
    font-weight: 500;
    line-height: 130%;
  }

  .booking .aside .aside-bottom p {
    margin-top: 12px;
    padding-top: 12px;
    color: rgba(0, 0, 0, 0.5);
    font-size: 14px;
    font-weight: 500;
    line-height: 130%;
    border-top: 1px solid rgb(235, 235, 235);
  }

  .booking .booking-popup {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 100;
    width: 323px;
  }

  .booking .booking-popup .promo-success {
    padding: 15px;
    display: none;
    border: 1px solid rgb(42, 158, 151);
    background: rgb(255, 255, 255);
    border-radius: 8px;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.15);
  }

  .booking .booking-popup .promo-success.active {
    display: block;
  }

  .booking .booking-popup .promo-success svg {
    width: 16px;
    height: 12px;
    margin-bottom: 8px;
  }

  .booking .booking-popup .promo-success p {
    color: rgb(42, 158, 151);
    font-size: 16px;
    font-weight: 500;
    line-height: 130%;
  }

  .booking .booking-popup .not-required {
    padding: 15px;
    display: none;
    border: 1px solid rgb(221, 35, 35);
    background: rgb(255, 255, 255);
    border-radius: 8px;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.15);
  }

  .booking .booking-popup .not-required.active {
    display: block;
  }

  .booking .booking-popup .not-required svg {
    width: 14px;
    height: 14px;
    margin-bottom: 8px;
  }

  .booking .booking-popup .not-required p {
    color: rgb(221, 35, 35);
    font-size: 16px;
    font-weight: 500;
    line-height: 130%;
  }

  .air-datepicker {
    min-width: 294px;
    width: 100%;
    margin-left: -16px;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #EBEBEB;
    background: #FFF;
    border-radius: 8px;
    box-shadow: 3.157px 4.253px 3.178px 0px rgba(77, 113, 113, 0.03), 14.922px 20.104px 12.422px 0px rgba(77, 113, 113, 0.04), 38.741px 52.193px 39px 0px rgba(77, 113, 113, 0.07);
  }

  .air-datepicker .air-datepicker--pointer {
    display: none;
  }

  .air-datepicker .air-datepicker--navigation {
    padding: 15px 10px 0;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    border: none;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title {
    color: var(--accent-green);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title:hover {
    background-color: inherit;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--title i {
    color: #242F24;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action {
    position: relative;
    width: 16px;
    height: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=next]::before {
    background-image: url("../img/arrow2.svg");
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=prev] {
    transform: rotate(180deg);
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action[data-action=prev]::before {
    background-image: url("../img/arrow2.svg");
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action::before {
    content: "";
    width: 6px;
    height: 9px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .air-datepicker .air-datepicker--navigation .air-datepicker-nav--action svg {
    display: none;
  }

  .air-datepicker .air-datepicker--content {
    padding: 0 10px 10px;
    box-sizing: border-box;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--day-names {
    margin: 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--day-name {
    height: 42px;
    color: var(--text-caption);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-body--cells {
    grid-auto-rows: auto;
    grid-gap: 2px 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell {
    position: relative;
    width: 100%;
    height: 42px;
    align-items: flex-start;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text-caption);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    border-radius: 0;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell:hover {
    background: #4A5746;
    border: none;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected- {
    color: #DEEADB;
    border-radius: 4px;
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-::before {
    color: #ffffff;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-in-range- {
    color: var(--accent-green);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-range-from-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-range-to- {
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-focus- {
    color: var(--white);
    border-radius: 4px;
    background: var(--accent-green-2);
    cursor: pointer;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-in-range- {
    color: var(--accent-green);
    font-weight: 600;
    background: #F0FAFA;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-range-from-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-range-to- {
    color: var(--white);
    background: var(--accent-green-2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-selected-.-other-month-,
  .air-datepicker .air-datepicker--content .air-datepicker-cell.-in-range-.-other-month- {
    color: #242F24;
    background: rgba(74, 87, 70, 0.2);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-disabled- {
    color: rgba(36, 47, 36, 0.45);
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-disabled-::before {
    content: none !important;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell.-other-month- {
    color: transparent;
  }

  .air-datepicker .air-datepicker--content .air-datepicker-cell[data-year="2023"][data-month="2"][data-date="8"],
  .air-datepicker .air-datepicker--content .air-datepicker-cell[data-year="2023"][data-month="2"][data-date="9"] {
    color: #DB1E2F;
    border-bottom: 1px solid #DB1E2F;
    background: rgba(219, 30, 47, 0.15);
    pointer-events: none;
  }

  .air-datepicker .air-datepicker--buttons {
    padding: 12px;
    border-top: 1px solid #C2C7C1;
  }

  .air-datepicker .air-datepicker-nav--action:hover {
    background-color: transparent;
  }

  .air-datepicker .cursor-default {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 47px;
    font-weight: 500;
    font-size: 17px;
    line-height: 120.5%;
    text-align: center;
    color: #DEEADB;
    background: #4A5746;
    border-radius: 0;
  }

  .air-datepicker .mobile-title {
    position: absolute;
    top: -52px;
    left: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    height: 36px;
    font-size: 17px;
    line-height: 36px;
    text-align: center;
    color: #242F24;
    background: #C3C8C3;
    border-radius: 20px;
    transform: translateX(-50%);
    white-space: nowrap;
  }


  @media (max-width: 1200px) {
    .filter {
      grid-template-columns: repeat(2, 1fr);
      padding: 0;
      background-color: transparent;
    }

    .filter .filter__block.filter__block--quantity {
      margin-left: 0;
    }

    .filter .filter__block.filter__block--quantity::after {
      display: none;
    }

    .filter .filter__block.filter__block--type {
      margin-left: 0;
    }

    .filter .filter__block.filter__block--type::after {
      display: none;
    }

    .air-datepicker {
      min-width: none;
    }

    .item .about {
      grid-template-columns: 1fr 30vw;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services {
      grid-template-columns: 1fr;
    }

    .item .about .advantages-block .advantages {
      grid-template-columns: repeat(2, 1fr);
    }

    .item .about #profile .wrapper .grid-block {
      grid-template-columns: 1fr;
    }

    .booking .container {
      display: block;
    }

    .booking .aside {
      margin-top: 30px;
    }

    .air-datepicker {
      min-width: none;

    }
  }

  @media (max-width: 992px) {
    .header {
      padding: 5px 0 10px;
      height: 54px;
    }

    .header .logo {
      margin-right: auto;
    }

    .header .mobile-menu {
      position: absolute;
      top: 54px;
      left: 0;
      z-index: 200;
      width: 100%;
      flex-direction: column;
      align-items: flex-start;
      padding: 10px;
      border-radius: 0px 0px 15px 15px;
      background: #FFF;
      transition: 0.3s;
      opacity: 0;
      visibility: hidden;
    }

    .header nav {
      flex-direction: column;
      align-items: flex-start;
      margin: 0;
    }

    .header nav a {
      margin-left: 0;
      margin-top: 25px;
      color: #02291B;
    }

    .header nav a:first-of-type {
      margin-top: 0;
    }

    .header .tel-link {
      font-size: 20px;
      margin-top: 80px;
    }

    .header .booking-btn {
      padding: 20px 32px;
      width: 100%;
      margin-top: 25px;
      margin-left: 0;
      border-radius: 8px;
      border: 1px solid var(--text-primary);
      background: #024C48;
    }

    .header .booking-btn span {
      color: #FFF;
      font-size: 14px;
    }

    .header .mobile-menu-btn {
      display: flex;
    }

    .top.top--short {
      display: none;
    }

    .top .weather-wrapper {
      display: none;
    }

    .sanatoriums .sanatoriums-list {
      grid-template-columns: repeat(2, 1fr);
    }

    .search-results .container {
      display: block;
    }

    .search-results .filters {
      position: fixed;
      top: 0;
      left: 0;
      z-index: 20;
      width: 100vw;
      height: 100dvh;
      display: none;
      background-color: var(--white);
      overflow: hidden;
      overflow-y: scroll;
    }

    .search-results .filters.active {
      display: block;
    }

    .search-results .filters .title-wrapper {
      display: flex;
    }

    .search-results .filters .filter-close-btn {
      display: flex;
    }

    .search-results .filters .filter {
      display: grid;
      padding: 20px;
      grid-gap: 25px;
    }

    .search-results .filters .filters-list {
      padding: 40px 20px 150px;
    }

    .search-results .filters .mobile-bottom {
      display: flex;
    }

    .search-results .catalog {
      display: flex;
      flex-direction: column;
    }

    .search-results .catalog .mobile-wrapper {
      display: grid;
      order: 1;
    }

    .search-results .catalog .title-wrapper {
      order: 3;
      margin-top: 30px;
      padding-bottom: 0;
      border: none;
    }

    .search-results .catalog .tags {
      order: 2;
    }

    .search-results .catalog .sanatoriums-list {
      order: 4;
      grid-template-columns: repeat(2, 1fr);
    }

    .item .item-slider .swiper-wrapper {
      grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }

    .item .item-slider .swiper-wrapper .swiper-slide:nth-of-type(2) {
      grid-column: 4/6;
    }

    .item .advantages {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      grid-gap: 20px;
    }

    .item .about {
      display: block;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services {
      grid-template-columns: repeat(2, auto);
    }

    .item .about .advantages-block .advantages {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-gap: 20px;
    }

    .item .about #profile .wrapper .grid-block {
      grid-template-columns: repeat(2, 1fr);
    }

    .item .about nav {
      display: none;
    }
  }

  @media (max-width: 768px) {
    .h2 {
      font-size: 24px;
      letter-spacing: -0.48px;
    }

    .header .logo {
      width: 126px;
    }

    .footer .info .logo {
      width: 99px;
    }

    .top {
      padding-bottom: 20px;
    }

    .top.top--long .inner-wrapper {
      padding: 80px 30px 90px;
      background-image: url("../img/img13.jpg");
    }

    .top.top--long .title-wrapper h1 {
      text-align: center;
      font-size: 36px;
      letter-spacing: -0.72px;
    }

    .top .inner-wrapper {
      display: block;
      border-radius: 10px;
    }

    .top .inner-wrapper::before {
      border-radius: 10px;
      background: linear-gradient(90deg, rgba(2, 76, 72, 0.75) -37.38%, rgba(2, 41, 27, 0.47) 128.66%);
    }

    .top .title-wrapper p {
      margin-top: 15px;
      font-size: 14px;
      text-align: center;
    }

    .filter {
      margin-top: 80px;
      grid-gap: 15px;
    }

    .filter .filter__block {
      height: 60px;
    }

    .filter .filter__block.filter__block--date .dates {
      font-size: 16px;
    }

    .filter .filter__txt {
      font-size: 16px;
    }

    .filter .filter__btn {
      padding: 20px 32px;
    }

    .filter .filter__btn span {
      font-size: 14px;
    }

    .filter .filter__btn svg {
      width: 15px;
      height: 15px;
      margin-left: 10px;
    }

    .sanatoriums {
      padding: 40px 0;
    }

    .sanatoriums .sanatoriums-list {
      margin-top: 25px;
      grid-template-columns: 1fr;
    }

    .callback {
      padding: 40px 0;
    }

    .callback.callback--1 .inner-wrapper {
      padding: 60px 30px;
    }

    .callback.callback--1 form {
      margin: 0 auto;
      padding: 20px;
    }

    .callback.callback--2 .inner-wrapper {
      padding: 60px 30px;
    }

    .callback.callback--2 form {
      display: block;
      max-width: 520px;
      margin: 0 auto;
      padding: 20px;
    }

    .callback.callback--2 form .txt-wrapper {
      max-width: none;
    }

    .callback.callback--2 form .form-wrapper {
      max-width: none;
      margin-top: 20px;
    }

    .callback form {
      margin: 0 auto;
    }

    .callback form h3 {
      text-align: center;
      font-size: 20px;
      letter-spacing: -0.4px;
    }

    .callback form p {
      font-size: 12px;
      text-align: center;
    }

    .callback form .form-wrapper {
      margin-top: 20px;
    }

    .callback form button {
      margin-top: 20px;
      padding: 20px 30px;
    }

    .callback form button span {
      font-size: 14px;
    }

    .faq {
      padding: 40px 0 80px;
    }

    .faq .container {
      display: block;
    }

    .faq .faq-wrapper {
      margin-top: 25px;
      grid-gap: 20px;
    }

    .faq .faq-wrapper .question {
      padding: 10px 20px;
    }

    .faq .faq-wrapper .question.active + .answer {
      margin-bottom: 10px;
    }

    .faq .faq-wrapper .question button {
      margin-left: 20px;
    }

    .search-results {
      padding-bottom: 40px;
    }

    .search-results .filters .filter {
      padding: 10px;
      margin: 0;
    }

    .search-results .filters .filters-list {
      grid-gap: 25px;
      padding: 20px 10px 150px;
    }

    .search-results .filters .filters-list li h5 {
      color: var(--text-secondary);
      font-size: 14px;
      font-weight: 400;
      line-height: 130%;
    }

    .search-results .filters .filters-list li .checkbox p {
      color: #000;
    }
    .search-results .filters .filters-list li .checkbox label {
      color: #000;
    }

    .search-results .catalog .choices {
      display: none;
    }

    .search-results .catalog .mobile-wrapper {
      margin-bottom: 15px;
    }

    .search-results .catalog .title-wrapper h3 {
      font-size: 16px;
    }

    .search-results .catalog .tags li {
      margin-top: 5px;
      margin-right: 5px;
    }

    .search-results .catalog .tags li p:first-of-type {
      font-size: 12px;
    }

    .search-results .catalog .sanatoriums-list {
      margin-top: 20px;
      grid-gap: 20px;
    }

    .search-results .catalog .sanatoriums-list .img-wrapper {
      height: 200px;
    }

    .item {
      padding-bottom: 40px;
    }

    .item .title-wrapper {
      order: 2;
      grid-template-columns: auto 1fr;
      grid-gap: 4px 6px;
      margin-top: 20px;
    }

    .item .title-wrapper h1 {
      align-self: start;
      grid-column: 1/3;
      font-size: 24px;
      letter-spacing: -0.48px;
    }

    .item .title-wrapper .rating {
      justify-self: start;
      align-self: center;
    }

    .item .title-wrapper .reviews {
      align-self: center;
      margin-top: 2px;
      font-size: 14px;
    }

    .item .item-slider {
      order: 1;
      margin: 0 -10px;
      width: calc(100% + 20px);
      padding: 0 10px;
    }

    .item .item-slider .swiper-wrapper {
      display: flex;
      grid-gap: 0;
    }

    .item .item-slider .swiper-wrapper .swiper-slide {
      height: 480px;
    }

    .item .item-slider .item-slider-pagination {
      display: flex;
    }

    .item .advantages {
      order: 3;
    }

    .item .about {
      order: 4;
      margin-top: 15px;
      padding-top: 40px;
      padding-bottom: 20px;
      border-top: 1px solid #D8D8D8;
      border-bottom: 1px solid #D8D8D8;
    }

    .item .about #select {
      margin-top: 20px;
    }

    .item .about #select .filter .filter__txt {
      font-size: 16px;
      font-weight: 600;
      line-height: 120%;
      color: var(--accent-green);
    }

    .item .about #select .rooms-list li {
      padding: 10px 12px;
    }

    .item .about #select .rooms-list li .room-wrapper {
      display: block;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper h6 {
      font-size: 18px;
      letter-spacing: -0.36px;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p {
      margin-top: 15px;
      margin-right: 15px;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .tags p span {
      font-size: 12px;
      letter-spacing: -0.12px;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services {
      margin-top: 15px;
      grid-gap: 8px;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services li p:last-of-type {
      margin-top: 4px;
    }

    .item .about #select .rooms-list li .room-wrapper .img-wrapper {
      margin-top: 15px;
      height: 200px;
    }

    .item .about #select .rooms-list li .booking-wrapper button span {
      font-size: 14px;
    }

    .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .price {
      font-size: 20px;
    }

    .item .about #select .rooms-list li .booking-wrapper .txt-wrapper .for-what {
      margin-top: 0;
    }

    .item .about .advantages-block {
      margin-top: 20px;
    }

    .item .about .advantages-block .advantages {
      grid-template-columns: repeat(2, 1fr);
      order: 3;
      margin-top: 20px;
    }

    .item .about #profile .wrapper {
      padding: 16px;
      margin-top: 20px;
    }

    .item .about #profile .wrapper:first-of-type {
      margin-top: 20px;
    }

    .item .about #profile .wrapper .title-wrapper {
      margin: 0;
    }

    .item .about #profile .wrapper h4 {
      font-size: 18px;
      letter-spacing: -0.36px;
    }

    .item .about #profile .wrapper p {
      padding: 4px 6px;
    }

    .item .about #profile .wrapper p svg {
      width: 16px;
      height: 16px;
      margin-right: 4px;
    }

    .item .about #profile .wrapper p span {
      font-size: 12px;
    }

    .item .about #profile .wrapper .grid-block {
      grid-gap: 8px;
    }

    .item .about #profile .wrapper .inner-wrapper h6 {
      font-size: 14px;
    }

    .item .about #profile .wrapper .inner-wrapper ul {
      margin-top: 10px;
    }

    .item .about #nutrition {
      margin-top: 0;
      border-top: none;
    }

    .item .about #reviews {
      margin-top: 20px;
    }

    .item .about #reviews .reviews-list {
      margin-top: 20px;
      grid-gap: 20px;
    }

    .item .about #reviews .review {
      padding: 20px 16px;
    }

    .item .about #reviews .review .name {
      font-size: 18px;
    }

    .item .about #reviews .review .txt {
      font-size: 14px;
    }

    .item .about #reviews .review .review-slider {
      margin: 16px -16px 0;
      width: calc(100% + 32px);
      padding: 0 16px;
    }

    .item .about #docs {
      margin-top: 20px;
    }

    .item .about h3 {
      font-size: 24px;
      letter-spacing: -0.48px;
    }

    .item .about p {
      font-size: 14px;
    }

    .footer {
      padding-bottom: 15px;
    }

    .footer .container {
      display: block;
    }

    .footer .info .tel-link {
      font-size: 20px;
      letter-spacing: -0.4px;
    }

    .footer .info .email-link {
      margin-top: 10px;
      font-size: 20px;
      letter-spacing: -0.4px;
    }

    .footer nav {
      margin-top: 40px;
    }

    .footer nav a {
      margin-left: 70px;
      font-size: 14px;
      font-weight: 600;
      line-height: 120%;
    }

    .footer .official-txt {
      margin-top: 20px;
      font-size: 12px;
    }

    .footer .policy-link {
      margin-top: 10px;
      font-size: 12px;
    }
  }

  .booking {
    padding: 30px 0;
  }

  .booking .main {
    margin-top: 20px;
  }

  @media (max-width: 768px){
    .booking .main .main-top {
      grid-template-columns: 1fr 100px;
    }
    .booking .main .main-top .img-wrapper {
      grid-row: 1/2;
      grid-column: 2/3;
      height: 80px;
    }
    .booking .main .main-top .txt-wrapper {
      grid-row: 1/2;
      grid-column: 1/2;
      grid-template-columns: 1fr;
      grid-gap: 0;
    }
    .booking .main .main-top .txt-wrapper h2 {
      grid-column: auto;
      font-size: 20px;
    }
    .booking .main .main-top .txt-wrapper p {
      grid-column: auto;
      margin-top: 15px;
      grid-row: 4/5;
      font-size: 14px;
      font-weight: 500;
    }

    .booking .main .main-top .txt-wrapper .reviews {
      margin-top: 15px;
    }

    .booking .main .main-top .txt-wrapper .reviews .num {
      padding: 3px 6px;
      font-size: 10px;
    }

    .booking .main .main-top .txt-wrapper .reviews .txt {
      font-size: 12px;
    }

    .booking .main .main-top .txt-wrapper .address {
      grid-row: 2/3;
      margin-top: 5px;
    }

    .booking .main .main-top .txt-wrapper .address svg {
      display: none;
    }

    .booking .main .main-top .txt-wrapper .address .txt {
      font-size: 12px;
    }

    .booking .main .inner-wrapper {
      padding: 20px;
      margin-top: 30px;
    }
    .booking .main .inner-wrapper.conditions .conditions-list {
      display: block;
    }
    .booking .main .inner-wrapper.conditions .conditions-list .col {
      margin-top: 20px;
      padding-top: 20px;
      border-top: 1px solid rgb(235, 235, 235);
    }
    .booking .main .inner-wrapper.conditions .conditions-list .col:first-of-type {
      padding: 0;
      margin: 0;
      border: none;
    }
    .booking .main .inner-wrapper.conditions .conditions-list li {
      margin-top: 20px;
      padding-top: 20px;
    }

    .booking .main .inner-wrapper.details form {
      grid-template-columns: 1fr;
      grid-gap: 10px;
    }
    .booking .main .inner-wrapper.details form .inputs-wrapper {
      grid-template-columns: 1fr;
      grid-gap: 10px;
      margin-top: 0;
    }
    .booking .main .inner-wrapper.details form .check-wrapper {
      margin-top: 10px;
    }
    .booking .main .inner-wrapper.details form .check-wrapper label {
      align-items: flex-start;
      font-size: 14px;
    }

    .booking .main .inner-wrapper.guests form fieldset {
      grid-template-columns: 1fr;
      grid-gap: 10px;
    }
    .booking .main .inner-wrapper.guests form fieldset .top-wrapper {
      grid-column: auto;
    }
    .booking .main .inner-wrapper.guests .add-btn {
      width: 100%;
    }

    .booking .main .inner-wrapper.additional label {
      width: 100%;
      margin-left: 0;
      margin-top: 10px;
      display: flex;
      justify-content: space-between;
    }
    .booking .main .inner-wrapper.additional label:first-of-type {
      margin-top: 0;
    }
    .booking .main .inner-wrapper.additional label svg {
      margin-top: 5px;
    }
    .booking .main .inner-wrapper.additional label h6 {
      max-width: 150px;
      margin-top: 0;
      margin-left: 15px;
    }
    .booking .main .inner-wrapper.additional label p {
      margin-top: 0;
      margin-left: auto;
    }

    .booking .main .inner-wrapper.payment label {
      margin-left: 0;
      margin-top: 10px;
      width: 100%;
      display: grid;
      grid-template-columns: 22px 1fr;
      grid-gap: 5px 10px;
    }
    .booking .main .inner-wrapper.payment label:first-of-type {
      margin-top: 0;
    }
    .booking .main .inner-wrapper.payment label .icon {
      grid-column: 1/2;
      grid-row: 1/3;
    }
    .booking .main .inner-wrapper.payment label h6 {
      margin: 0;
    }
    .booking .main .inner-wrapper.payment label h6 br {
      display: none;
    }
    .booking .main .inner-wrapper.payment label p {
      margin: 0;
    }

    .booking .main .inner-wrapper p {
      font-size: 14px;
    }
    .booking .main .inner-wrapper textarea {
      min-height: 130px;
    }
    .booking .main .inner-wrapper .inputs-wrapper {
      flex-direction: column;
    }

    .booking .aside .aside-top {
      margin: 0 -10px;
      width: calc(100% + 20px);
    }
    .booking .aside .aside-bottom {
      padding: 20px;
      margin-top: 10px;
      background: rgb(249, 249, 249);
    }
  }
  @media (max-width: 600px) {
    .filter {
      grid-template-columns: 1fr;
    }

    .item .about #select .filter {
      grid-template-columns: 1fr;
      grid-gap: 15px;
    }

    .item .about #select .filter .filter__block.filter__block--date {
      grid-column: auto;
    }

    .item .about #select .filter .filter__block.filter__block--btn {
      grid-column: auto;
    }
  }

  @media (max-width: 480px) {
    .callback form {
      width: 100%;
    }

    .search-results .catalog .sanatoriums-list {
      grid-template-columns: 1fr;
    }

    .item .item-slider .swiper-wrapper .swiper-slide {
      height: 275px;
    }

    .item .advantages {
      grid-template-columns: 1fr;
      grid-gap: 10px;
      margin-top: 15px;
    }

    .item .advantages .img-wrapper {
      margin-right: 12px;
    }

    .item .advantages p {
      font-size: 14px;
    }

    .item .about #select .rooms-list li .room-wrapper .txt-wrapper .services {
      grid-template-columns: 1fr;
    }

    .item .about #select .rooms-list li .booking-wrapper {
      flex-direction: column-reverse;
      padding-top: 0;
      align-items: flex-start;
      border: none;
    }

    .item .about #select .rooms-list li .booking-wrapper button {
      width: 100%;
      margin-top: 16px;
      padding: 15px 32px;
    }

    .item .about #select .rooms-list li .booking-wrapper .txt-wrapper {
      width: 100%;
      display: flex;
      flex-direction: row-reverse;
      justify-content: space-between;
      align-items: center;
    }

    .item .about .advantages-block .advantages {
      grid-template-columns: 1fr;
      grid-gap: 10px;
    }

    .item .about .advantages-block .advantages .img-wrapper {
      margin-right: 12px;
    }

    .item .about .advantages-block .advantages p {
      font-size: 14px;
    }

    .item .about #profile .wrapper .grid-block {
      grid-template-columns: 1fr;
    }

    .footer nav {
      justify-content: space-between;
    }

    .footer nav a {
      margin-left: auto;
    }
  }
  /*# sourceMappingURL=maps/main.css.map */