/* ==================== BASE STYLES ==================== */

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset !important;
  box-shadow: 0 0 0px 1000px white inset !important;
  -webkit-text-fill-color: #000 !important;
  caret-color: #000 !important;
}

.num-wrap {
  display: flex;
  align-items: flex-start;
}

.num-wrap b {
  min-width: 83px;
  display: inline-block;
}

.num-wrap .text {
  flex: 1;
}

/* list */
.faq-spoilers__text.text ol {
  list-style-position: outside;
  padding-left: 1em;
}

.faq-spoilers__text.text ol li,
.faq-spoilers__text.text p,
.faq-spoilers__text.text h4,
.faq-spoilers__text.text h3 {
  margin-bottom: 11px;
  list-style-type: auto;
}

.bold-marker-style ol li::marker {
  font-weight: bold;
}

.bold-marker-style ol b {
  margin-bottom: 15px;
  display: inline-block;
}

.text ol li:before {
  content: "";
}

.splide__pagination__page:before {
  background-color: var(--bullets-color, #dbdbdb);
}

.faq-spoilers__title h3 {
  font-weight: 500;
}

.flex {
  display: flex;
}

.flex-row {
  display: flex !important;
  flex-direction: row;
}

.pointer {
  cursor: pointer;
}

.items-center {
  align-items: center;
}

.relative {
  position: relative;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.hidden {
  display: none !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.display-block {
  display: block !important;
}

.underline {
  text-decoration: underline;
}

.no-underline {
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.capitalize {
  text-transform: capitalize;
}

.font-bold {
  font-weight: bold;
}

.z-2 {
  z-index: 2;
  position: relative;
}

.z-10 {
  z-index: 10;
}

.max-w-full {
  max-width: 100%;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mr-5 {
  margin-right: 5px;
}

.ml-5 {
  margin-left: 5px;
}

.mt-2 {
  margin-top: 0.5rem;
}
.center {
  text-align: center;
}

.absolute_link {
  position: absolute;
  inset: 0;
  z-index: 8;
}

.no-events {
  pointer-events: none;
}

.col-span-2 {
  grid-column: span 2;
}

/* Visibility helpers */
.show-mobile {
  display: block;
}

.show-desktop,
.show-desktop-inline {
  display: none;
}

.show-table {
  display: block;
}

.hide-table {
  display: none;
}

/* ==================== PAYMENT ==================== */

.payment__card-data .field .year-select .select,
.payment__card-data .field .month-select .select {
  width: 6.8rem;
}

.payment__field--card-num .validated:before {
  top: 13px;
}

.month-select .select__option {
  padding-left: 10px;
  padding-right: 10px;
}

.payment__footer .checkbox__icon {
  background: #f9f9f9;
  border: 0.0625rem solid #d2d2d2;
}

.payment__checkbox:hover .checkbox__icon {
  background-color: #f5fcfe;
  box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
  border-color: #d2d2d2;
}

.payment__field.error-field label {
  color: #b3261e;
}
.payment__field.error-field input {
  border-color: #b3261e;
}
.payment__field.error-field .select__title {
  border-color: #b3261e;
}

.payment__block--card .payment__fields {
  max-width: 59.4375rem;
}

.payment__button {
  margin-left: 25px;
}

.payment__checkbox .field__error {
  position: absolute;
  top: 30px;
}

.payment__body .tours-sub__info.info-tours {
  height: 100%;
}

.country-input-payment {
  font-weight: 500 !important;
  font-size: 1.125rem;
  color: #000;
}

#pay-now-btn:disabled {
  color: black;
}

/* ==================== FORM FIELDS ==================== */

.field--error .select__title,
.field--error .country-tab-header {
  border: 1px solid #b3261e;
}
.field--error .country-tab-header-title {
  color: #ef4136;
}
.field--error .counters-dropdown__title {
  border-color: #b3261e;
}
.field--error #nt-signature-canvas {
  border: 1px solid red !important;
}

.field__input input,
.field__input textarea,
.field__input select {
  color: #000;
  outline: none;
  position: relative;
}

.field__input:last-child {
  margin-bottom: 0;
}

.field__input--calendar:before {
  z-index: 2;
}

.field.field--error .field__error {
  display: block;
  position: absolute;
  top: 80px;
}

.field.field--error .js-calendar-trigger .field__error {
}

.field.field--error .field__rooms .field__error {
  top: 215px;
}
.field.field--error .field__rooms.rooms-mob .field__error {
  top: 318px;
}
.private_tour_rates .field.field--error .field__rooms.rooms-mob .field__error {
  top: 331px;
}
.tour_with_rate .field.field--error .field__rooms.rooms-mob .field__error {
  top: 340px;
}
.private_no_rates .field.field--error .field__rooms.rooms-mob .field__error {
  top: 331px;
}
.field.field--error .field__counters-dropdown .field__error {
  top: 50px;
}

.error_text_field .field.field--error .field__error {
  top: 155px;
}

.details-journey__form:not(.private_day)
  .field.field--error
  .counter
  .field__error {
  top: 90px;
}

.form-footer__field--dual .field__error {
  display: none;
}
.form-footer__field--dual.field--error .field__error {
  display: block;
}
.field__error.captcha-error {
  position: absolute;
}

.validated {
  display: none;
  margin-top: 5px;
}

.validated.active {
  display: block;
}

.field:has(.field__error) .field__input textarea.no-error,
.field:has(.field__error) .field__input > input.no-error {
  color: inherit !important;
  outline: none !important;
  border-color: #d2d2d2;
}

.field:has(.field__error) .field__input textarea,
.field:has(.field__error) .field__input > input {
  color: inherit !important;
  outline: none !important;
}

.tour-form .field:has(.field__error) .field__input:after,
.field:has(.field__error) .counter .field__input:after {
  content: "";
}

.radio-checkbox-field {
  position: relative;
}

.radio-checkbox-field .field__error {
  position: absolute !important;
}

.page--header-padding .field.field--error .field__error {
  top: 93px;
}
.create-journey__type-radio.field--error .field__error,
.field__radiobox.field--error .field__error {
  top: 24px !important;
}
.create-journey__interests.field--error .field__error {
  top: 105px;
}
.register__field--walking .field__error {
  top: 77px !important;
}
.assistance-needed .field__error {
  top: 40px !important;
}
.signature-field.field.field--error .field__error {
  top: 190px;
}
.payment-amount-field.field.field--error .field__error {
  top: 115px;
}
.brochure-popup__field.field.field--error .field__error {
  top: 90px;
  padding-left: 0;
}

.field__radiobox.error {
  padding-bottom: 0;
}

/* ==================== COUNTRY SELECTIZE ==================== */

.country-tab {
  background: #f9f9f9;
  border: 0.0625rem solid #d2d2d2;
  border-radius: 6px;
  overflow: hidden;
}

.country-tab-header {
  padding: 12px 16px 12px 19px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
}

.form-footer__field .country-tab-header {
  padding: 14px 16px 14px 19px;
}

/* Merged .country-tab-body (was split across 3 rules) */
.country-tab-body {
  background: #f9f9f9;
  border: 0.0625rem solid #d2d2d2;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-top: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  display: none;
  height: 340px;
  left: 0;
  padding: 10px 20px 0 10px;
  position: absolute;
  top: 90%;
  width: 100%;
  z-index: 999;
}

.payment__field .country-tab .selectize-input input {
  padding: 0 !important;
}

.country-tab .selectize-input {
  height: 39px;
}

.country-tab-body .selectize-dropdown.single {
  box-shadow: none !important;
  border: none !important;
  display: block !important;
  top: 50px !important;
}

.country-tab-body .selectize-control.single .selectize-input {
  background: #ffffff !important;
  border: 1px solid #d2d2d2 !important;
  border-radius: 5px !important;
  font-size: 16px;
  position: relative;
}

.country-tab-body .selectize-dropdown .selected {
  color: #495c68;
}

.country-tab-body .selectize-dropdown [data-selectable].option:hover,
.country-tab-body .selectize-dropdown [data-selectable].option:focus,
.country-tab-body .selectize-dropdown [data-selectable].option.active {
  background-color: #e6e6e6;
}

.country-tab-body .selectize-dropdown [data-selectable].option {
  background: #f9f9f9;
  padding: 10px;
  font-size: 16px;
  cursor: pointer;
}

.country-tab-body .selectize-dropdown-content {
  max-height: 272px;
  overflow: auto;
}

.country-tab-body .selectize-control.single .selectize-input:after {
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><path d="M17.0313 17.7901C17.4913 18.2501 18.2013 17.5401 17.7413 17.0901L13.9913 13.3301C15.3071 11.8748 16.0343 9.98196 16.0313 8.02006C16.0313 3.63006 12.4613 0.0600586 8.07133 0.0600586C3.68133 0.0600586 0.111328 3.63006 0.111328 8.02006C0.111328 12.4101 3.68133 15.9801 8.07133 15.9801C10.0513 15.9801 11.8813 15.2501 13.2813 14.0401L17.0313 17.7901ZM1.11033 8.02006C1.11033 4.18006 4.24033 1.06006 8.07033 1.06006C11.9103 1.06006 15.0303 4.18006 15.0303 8.02006C15.0303 11.8601 11.9103 14.9801 8.07033 14.9801C4.24033 14.9801 1.11033 11.8601 1.11033 8.02006Z" fill="black"/></svg>');
  display: block;
  position: absolute;
  top: 57%;
  right: 10px;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  pointer-events: none;
  border: none;
}

.country-tab-body
  .selectize-control.single
  .selectize-input.dropdown-active:after {
  margin-top: -3px !important;
}

.journey-tour__personal-info .country-tab-header-title {
  line-height: 1.44;
}

.country-tab-header-title.select__value {
  padding: 0;
  justify-content: space-between;
}

/* ==================== PHONE FIELD ==================== */

.field__phone .iti__dropdown-content {
  width: auto !important;
  margin-top: 14px !important;
  left: 0px !important;
}

.iti.iti--allow-dropdown {
  max-width: 104px;
  background: white;
  display: flex;
  justify-content: center;
  align-items: center;
}

.field__phone .iti__country-container {
  left: unset !important;
  padding: 14px 6px;
  width: 100%;
}

.field__phone .iti__selected-country-primary {
  padding: 0;
}
.field__phone .iti__search-input {
  height: 35px;
}
.payment__field .field__phone .iti__search-input {
  padding-left: 30px !important;
  padding-right: 28px !important;
}

.field__phone .iti__selected-dial-code:after {
  content: "\e931";
  font-family: icons;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  font-size: 0.5rem;
  transition: transform 0.3s;
}

.field__phone .iti__arrow {
  display: none !important;
}

.field__phone .iti__selected-dial-code {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  margin-left: 11px !important;
}

[aria-expanded="true"] .iti__selected-dial-code:after {
  transform: rotate(-180deg);
  margin-bottom: 2px;
}

.field__phone .iti__selected-country {
  width: 100%;
  justify-content: space-between;
}

.field__phone .iti.iti--allow-dropdown.iti--show-flags.iti--inline-dropdown {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.create-journey__field .iti__search-input {
  padding-left: 30px !important;
}

.iti__country-container {
  height: 47px;
}

/* ==================== POPUP & THANKS ==================== */

/* Merged .popup (was split: z-index + display) */
.popup {
  z-index: 100;
  display: block !important;
}

.popup__close {
  color: #585858;
  font-size: 1.875rem;
  left: 2.1875rem;
  position: absolute;
  top: 2rem;
  transition: color 0.3s;
  z-index: 5;
}

.popup__body {
  justify-content: center;
}

.popup__content {
  width: 100%;
}

.popup--review[data-fls-popup-active] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: all !important;
  display: block !important;
}

.popup--review[data-fls-popup] {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.3s ease;
  justify-content: center;
  align-items: center;
}

.popup--review[data-fls-popup]._active {
  display: flex;
  visibility: visible;
  pointer-events: auto;
  opacity: 1;
}

[data-fls-popup-body] {
  background-color: #fff;
  padding: 2rem;
  max-width: 600px;
  width: 100%;
  transform: scale(0);
  visibility: hidden;
  transition: all 0.3s ease;
}

.popup--review[data-fls-popup]._active [data-fls-popup-body] {
  transform: scale(1);
  visibility: visible;
}

.popup--review [data-fls-popup-body] {
  padding: 5.4375rem 5.375rem 4.4375rem 6.4375rem !important;
}

.popup--review .popup__body {
  position: relative;
  width: 957px;
  max-width: 100%;
  height: auto;
  background: #fff;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  padding: 45px 35px 57px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 29px;
  border: 1px solid #585858;
}

.popup--review .popup__close {
  width: 50px;
  height: 55px;
}

.popup--review .popup__close:hover {
  background-color: #dedede;
}

[data-fls-popup="thanks"] .popup__wrapper {
  padding: 20px;
}

.popup--brochure [data-fls-popup-body] {
  box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
  max-width: 87.125rem;
  padding: 7.1875rem 5.875rem 9.5625rem 6.5rem;
}

/* Merged .thanks-popup (was split: padding-top + full display rules) */
.thanks-popup {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 34px;
  width: 100%;
  max-width: 889px;
  margin: 0 auto;
  padding-top: 0 !important;
}

.thanks-popup__image {
  height: auto;
  width: auto;
}

.thanks-popup__text {
  color: #373737;
}

.thanks-popup__text p:nth-of-type(2),
.popup h3 {
  margin-bottom: 25px;
}

.thanks-popup__text a,
.no-rates-label a,
.decorative-underline,
.hover-link-wrapp a,
.hover-link {
  color: inherit;
  text-decoration: underline;
  transition:
    color 0.2s ease,
    text-decoration-color 0.2s ease;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.thanks-popup__text a:hover,
.no-rates-label a:hover,
.decorative-underline:hover,
.hover-link-wrapp a:hover {
  color: #0073e6;
  text-decoration: underline;
  text-decoration-color: #0073e6;
}

.hover-link:hover {
  color: #f27126;
  cursor: pointer;
}

.thanks-popup .thanks-popup__text.contact-popup p:last-of-type {
  max-width: 160px;
}

.thanks-popup__text.footer-popup {
  max-width: 644px;
  font-size: 24px;
}

.thanks-popup__text.footer-popup h2 {
  font-size: 30px;
}

.popup__wrapper.popup-footer {
  height: 100%;
}
.popup-footer .popup__body {
  justify-content: center;
}
.popup-footer .thanks-popup__image {
  width: auto;
}

.item-feedback__title,
.review-popup__title {
  text-align: left;
  margin-bottom: 30px !important;
}

.review-popup__text.text p:not(:last-child) {
  margin-bottom: 30px;
}

._icon-close-popup {
  display: inline-block;
  width: 30px;
  height: 30px;
}

._icon-close-popup:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: no-repeat center / contain
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='15' viewBox='0 0 14 15' fill='none'%3E%3Cpath d='M13.4473 1L1 14.224' stroke='%23585858' stroke-linecap='round'/%3E%3Cpath d='M1 1L13.4473 14.224' stroke='%23585858' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.dates-popup__clock {
  aspect-ratio: 1 / 1;
  opacity: 1;
  position: absolute;
  right: 32.3125rem;
  top: 33.628166%;
  width: 17.625rem;
}

.birthday-popup-title,
.dates-popup__title {
  white-space: nowrap;
}

/* ==================== LOADING ==================== */

#loadingCoverDiv {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #dbe4e6;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity 0.8s ease;
}

#loadingLogo {
  opacity: 0;
  transition: opacity 0.3s ease-in;
}

#loadingLogo.visible {
  opacity: 1;
}

/* ==================== VIDEO / MEDIA ==================== */

.post__text .video-placeholder {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  background-color: #000;
  border-radius: 20px;
  overflow: hidden;
  margin: 20px 0;
  cursor: pointer;
}

.post__text .video-placeholder .thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0 !important;
}

.post__text .video-placeholder .play-button {
  position: absolute;
  top: 50%;
  left: 50%;
}

.videobox__play {
  align-items: center;
  aspect-ratio: 131 / 106;
  background-color: #ff8300;
  border: 0.125rem solid #fff;
  border-radius: 1.0625rem;
  display: flex;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: background-color 0.3s;
  width: 8.1875rem;
}

.videobox__play svg {
  aspect-ratio: 51 / 57;
  object-fit: contain;
  transform: translate(10%, 10%);
  transition: transform 0.3s;
  width: 40%;
  will-change: transform;
}

/* Merged .post__text p:has(iframe) (was split across 2 rules) */
.post__text p:has(iframe) {
  aspect-ratio: 500 / 279;
  position: relative;
  max-height: 570px;
  overflow: hidden;
  border-radius: 20px;
  margin: 20px 0;
}

.post__video-wrapper {
  aspect-ratio: 667 / 270;
}

.post__text p:has(iframe) iframe,
.post__video-wrapper iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  border: 0;
}

p:has(.video-placeholder) + p {
  font-size: 14px;
}

/* ==================== POST TEXT ==================== */

.post__text img {
  width: 100%;
  border-radius: 30px !important;
  max-width: 100%;
  display: block;
  margin: 20px 0 !important;
}

.post__text h2,
.post__text h3 {
  color: var(--color-orange) !important;
  margin-top: 30px;
  margin-bottom: 20px;
}

.post__text h2:first-of-type {
  margin-top: 0;
}

.post__text figcaption {
  font-size: 14px;
  color: #666;
  margin-top: 8px;
  text-align: center;
}

.post__text p:not(:last-child) {
  line-height: 1.7;
  margin-bottom: 16px !important;
}

.post__text h2 span,
.post__text h3 span,
.post__text span {
  font-size: inherit !important;
  font-family: inherit !important;
  color: inherit !important;
  all: unset !important;
}

.post__text p {
  display: block !important;
  font-size: inherit !important;
  font-family: inherit !important;
  color: inherit !important;
}

.post__text figure.wp-caption {
  border-radius: 40px;
  overflow: hidden;
  max-width: 100%;
}

.post__text figure.wp-caption picture,
.post__text figure.wp-caption img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;
}

/* Merged .wp-caption-text (was split: font-size + margin-bottom) */
.wp-caption {
  width: 100% !important;
}

.wp-caption img {
  margin-bottom: 2rem;
}

.wp-caption-text {
  font-size: 0.875rem;
  margin-bottom: 30px;
}

.alignfull img {
  width: 100%;
  height: auto;
}

/* Post double-image table */
.post__text.text table {
  margin-bottom: 32px;
}

.post__text.text td img {
  border-radius: 0.625rem !important;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 !important;
  object-fit: cover;
}

.post__text.text td {
  vertical-align: top;
}
.post__text.text td:first-child {
  padding-right: 30px;
}
.post__text.text td:last-child {
  padding-left: 30px;
}

/* ==================== YOUTUBE STRIP ==================== */

.youtube-strip-section .youtube-strip {
  padding: 50px 20px;
  max-width: 1000px;
  margin: 0 auto;
}

.youtube-strip-section .youtube-strip img {
  height: 100%;
}
.youtube-strip-section .youtube-strip .post__video-wrapper {
  aspect-ratio: 473 / 270;
}
.youtube-strip-section .post__image {
  border-radius: 0 !important;
}

.youtube-strip-description {
  margin: 50px 0 20px 0;
  font-weight: 400;
  font-size: 14px;
  line-height: 26px;
  color: #585858;
}

/* ==================== BLOG ==================== */

.form-blog {
  background-color: #fff;
  border: 0.0625rem solid #d4d4d8;
  border-radius: 0.625rem;
  padding: 1.25rem 1.125rem 2.9375rem;
}

.blogContactForm .field__error,
.pl-0 .field__error {
  padding-left: 0;
}

.blog__header--category {
  padding-bottom: 60px;
}
.blog__header-pagination {
  margin-bottom: 40px;
}

.blog__header.blog__header-text h2 {
  margin-bottom: 16px;
  color: #2ec8d6;
  font-size: 2.9375rem;
  font-weight: 600;
  line-height: normal;
}

.blog__header.blog__header-text .blog__text {
  padding-bottom: 40px;
}
.blog__header-not-found .blog__title {
  font-weight: 500;
}
.blog__body .breadcrumbs__container {
  padding-left: 0;
}
.blog__post a:has(img) {
  width: 100%;
  max-width: 100%;
}
.blog__post p:has(img) {
  margin-bottom: 35px !important;
}
.blog__post p:has(img) + h5 {
  font-weight: 400;
  font-size: 14px;
  line-height: 26px;
  margin-top: -10px;
}

.item-blog__body {
  justify-content: space-between;
}
.item-blog__text {
  flex-grow: unset;
}

h3.item-blog__title {
  text-align: left;
  margin-bottom: 20px !important;
}

/* ==================== ABOUT PAGE ==================== */

.info-home__body.page-About {
  display: block;
  max-width: 1160px;
}

.info-home__body.page-About.info-home__body--row .info-home__text p {
  max-width: 100%;
}
.info-home__body.page-About h2 {
  margin-bottom: 20px;
}

.info-home__body.page-About h3 {
  text-align: left;
  width: 100%;
  max-width: 100%;
  margin-bottom: 60px !important;
}

.info-home__body.page-About .info-home__buttons {
  margin-top: 90px;
}
.page-About .info-home__buttons--right .info-home__button {
  margin-right: 0;
}

.info-home.home-About {
  padding: 40px 0 0 0;
  min-height: 42.25rem;
}

.home-About .info-home__container {
  padding-bottom: 180px;
}

/* ==================== FREE CONTENT ==================== */

.info-home.free-content {
  padding: 0;
}

.info-home.free-content h2,
.info-home.free-content h3 {
  text-align: left;
}

.free-content .info-home__text h3 {
  margin-top: 24px;
  max-width: 100%;
  margin-bottom: 30px;
  line-height: normal;
}

.free-content .text ul li:before {
  background-color: unset;
}
.free-content .text ul li {
  list-style: disc;
  display: list-item;
}
.free-content .text ul {
  list-style-type: disc;
  padding-left: 20px;
  margin: 0;
}
.free-content .info-home__container {
  position: unset;
}

.text-home.info-home__text {
  background: transparent !important;
  z-index: 2;
  position: relative;
  border: none;
  padding-left: 0;
  padding-right: 0;
  margin: 0 auto;
}

.text-home.info-home__text img {
  max-width: 1024px;
  width: 100%;
  border-radius: 0;
  margin-top: 30px;
}

/* ==================== TOURS ==================== */

.tours-sub__subtitle h2 {
  color: #585858;
  font-size: 2.9375rem;
  font-weight: 600;
  margin-bottom: 24px;
}

.tours-sub__subtitle {
  line-height: 1.45;
}
.tours-sub__subtitle h2 span {
  font-size: inherit !important;
  color: inherit !important;
}

.tours-sub__title-h2 h2 {
  color: #585858;
  font-size: 2.9375rem;
  font-weight: 600;
}

.tours-sub__header {
  align-items: unset !important;
}

.tours-sub__header h2 {
  font-size: 47px;
  margin-bottom: 20px;
}

.tours-sub__header p {
  font-size: 20px;
}

.tours-sub-category-list h2,
.tours-sub-category-list h2 span {
  color: #585858 !important;
}

.tours-sub-category-list p {
  font-size: 40px;
}

.tours__header.tours-sub-category-list .category__sub-title { 
  font-size: clamp(15px, 2.066vw + 7.17px, 47px);
  color: #585858
}

.tours__header.tours-sub-category-list .category__text {
  font-size: clamp(15px, 1.614vw + 8.88px, 40px);
  color: #585858;
  font-weight: 400;
}

.tours-sub__info {
  position: sticky;
  top: calc(var(--header-height) + 211px);
  /* background-color: #DDFAFB; */
}

.tours-sub__info .info-tours__text ul li:before {
  background-color: #585858;
}

.sub-text-content {
  overflow: hidden;
  max-height: 130px;
}

.fallback-banner-text {
  max-width: 300px;
}

.hero-tours-sub__title:not(.title-blog) {
  max-width: 300px;
}
.hero-tours-sub__title.hero-tours-sub__title--short {
  max-width: 495px;
}

.hero-tours-sub__title.hero-tours-sub__title--large {
  max-width: 850px !important;
  width: 100%;
}

.hero-tours-sub__title.hero-tours-sub__title--large:before {
  display: none;
}

.hero-tours-sub img {
  grid-column: 1 / -1;
  width: 100%;
  display: block;
}

.item-tours-contact-title {
  color: #59c1c6;
  font-weight: 700;
  transition: color 0.3s;
}

.item-tours-sub__text a {
  text-decoration: underline;
}

.item-tours-sub__text-link {
  text-decoration: underline;
  color: #59c1c6;
  font-weight: 700;
  transition: color 0.3s;
}

.item-tours-sub__title {
  color: #000000;
}

.item-tours-sub__title.title {
  margin-bottom: 1.5rem !important;
}
.item-tours__title {
  display: flex;
  align-items: center;
  justify-content: center;
}
.item-tours__image {
  /* placeholder */
}

.tour-details-reates-wrpr {
  display: flex;
  justify-content: space-between;
  margin: 47px 0 0 auto;
  max-width: 505px;
}

.tour-details-reates-wrpr .button {
  min-width: 193px;
  width: auto;
}

.tour_breadcrumbs {
  margin-bottom: 42px;
}
.main-tour__title span:after {
  background-color: var(--bg-color);
}
.tour__main {
  margin-bottom: 0 !important;
}
.tour__navigation {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.tour__container button {
  display: inline-block;
  white-space: nowrap;
}

.tour__navigation button svg {
  height: 25px;
  width: 25px;
  filter: none;
}

body.single-tour {
  overflow-x: hidden;
}

/* ==================== JOURNEY FORM ==================== */

.details-journey__form.group-tour-form {
  column-gap: 5.0625rem;
  grid-template-columns: repeat(3, 1fr);
  max-width: 66.625rem;
  position: relative;
}

.details-journey__form.private_day {
  column-gap: 5.0625rem;
  grid-template-columns: repeat(3, 1fr);
  max-width: 66.625rem;
}

.custom-grid-col-price-room {
  grid-column: span 2;
}

.journey-tour__label {
  text-align: start;
}
.journey-tour__footer {
  margin: 0 auto;
}

.journey-tour__summary {
  z-index: 2;
  background: white;
}

.journey-tour__booking-body {
  z-index: 1;
  position: relative;
  background: transparent;
  padding-bottom: 15.5625rem;
}

/* ==================== ROADMAP ==================== */

.roadmap-item._active:not(:has(~ ._active)) {
  font-weight: 600;
}
.roadmap-item._active {
  gap: 0.75rem;
}

.roadmap-item {
  align-items: center;
  color: #373737;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-size: 1.125rem;
  font-weight: 300;
  gap: 0.875rem;
  line-height: 1.21;
  position: relative;
  text-align: center;
}

.roadmap-item:before {
  background-color: #fbfbfb;
  height: 1.875rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 50%;
}

.roadmap-item:first-child:before {
  content: "";
  background-color: #f5f5f5;
}
.roadmap-item:last-child:before {
  content: "";
  background-color: #f5f5f5;
  left: auto;
  right: 0;
}

.completed .roadmap-tour__icon {
  background-color: #ff8300;
  border-color: #fff;
  border-width: 0.125rem;
  height: 2.125rem;
  margin-top: 0;
  width: 2.125rem;
}

.completed .roadmap-tour__icon::before {
  content: "";
  position: absolute;
  top: 10%;
  right: 6%;
  width: 76.666667%;
  aspect-ratio: 23 / 17;
  display: block;
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18' fill='none' viewBox='0 0 24 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-width='2' d='m1.438 11.126 5.426 5.426a.28.28 0 0 0 .397 0L22.063 1.75'/%3E%3C/svg%3E")
    no-repeat center / contain;
}

.fixed-roadmap-inner {
  max-width: 105rem;
  margin: 0 auto;
  padding: 10px 0;
}

.fixed-roadmap-wrapper.roadmap-js.is-fixed {
  position: fixed;
  left: 0;
  padding: 0 30px;
  width: 100% !important;
  top: 92px !important;
  z-index: 100;
  background: #f5f5f5;
}

.roadmap-placeholder {
  display: block;
  width: 100%;
}

/* ==================== REGISTER ==================== */

.register {
  overflow: unset;
}

.register__wrapper,
.register__block {
  margin-bottom: 4.6875rem;
}

.register__person-buttons {
  justify-content: end;
}

.register__checkbox .checkbox__icon._icon-check {
  border-color: #585858 !important;
}

.register__checkbox.field--error ._icon-check,
.custom-checkbox.field--error ._icon-check {
  border-color: #ef4136 !important;
}

.register__checkbox.field--error .checkbox__label,
.custom-checkbox.field--error .checkbox__label {
  color: #ef4136 !important;
}

.register__text strong {
  font-weight: 500;
}

.register__block--night .register__field .field__input > input,
.counters-dropdown__value {
  font-weight: 500;
}

.register__field .selectize-dropdown,
.register__field .selectize-input,
.register__field .selectize-input input,
.register__field .country-tab-header-title,
.register__field
  .country-tab-body
  .selectize-dropdown
  [data-selectable].option {
  color: #373737 !important;
  font-weight: 500;
  font-size: 18px !important;
}

.register__field .select__value:not(.country-tab-header-title.select__value) {
  padding: 0.71875rem 1.125rem;
}

.register__persons .register__block--person:last-child {
  margin-bottom: 84px;
}

/* Filled form */
.filled_form .register__block--personal,
.filled_form .register__block--address,
.filled_form .register__block--details,
.filled_form .register__block--hotel,
.filled_form .register__block--docs,
.filled_form .register__persons,
.filled_form .add-person-block,
.filled_form .register__block--night,
.filled_form .register__block--medical,
.filled_form .register__block--assistance,
.filled_form .final-step {
  display: block !important;
}

.filled_form .nt-continue {
  display: none !important;
}

/* ==================== UPLOADS ==================== */

.uploads-reg__file {
  position: relative;
}

.uploads-reg__file img {
  max-width: 230px;
  max-height: 340px;
  width: 100%;
  height: 100%;
  margin: 5px;
}

.uploads-reg__item.field {
  flex-direction: row;
}

.remove-file-btn {
  position: absolute;
  right: 20px;
  padding: 5px;
}

button.remove-file-btn:hover {
  background: silver;
}

/* ==================== SIGNATURE ==================== */

.nt-signature-wrap canvas {
  background: white;
  border: 0.0625rem solid #d2d2d2;
  border-radius: 0.3125rem;
}

/* ==================== BOOKING ==================== */

.page__booking .journey-tour__giraffe,
.page__booking .journey-tour__elephant {
  opacity: 1;
}

/* ==================== SUMMARY ==================== */

.summary-journey {
  max-width: 875px;
}

/* ==================== STICKY ==================== */

.sticky {
  top: 93px;
  margin: 0;
  width: 100%;
  position: fixed;
  padding: 25px 0;
}

.register__roadmap-wrapper {
  transition: padding 0.4s ease;
}

/* ==================== ERRORS ==================== */

.error-msg-field {
  background-color: white;
  color: #b3261e;
  border: 1px solid #b3261e;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 8px;
  margin-bottom: 30px;
}

.register__roadmap-wrapper .error-msg-field {
  margin: 30px 0 0;
}

.rooms-error {
  position: absolute;
  left: 36%;
  top: 107%;
}

/* ==================== DECORATIVE IMAGES ==================== */

.tour-decorative-image,
.decorative-image-right {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 0;
}

.decorative-image.small-image img {
  width: 400px;
}

.registration-decorative-image {
  position: absolute;
  bottom: -400px;
  right: 0;
}

.gallery-image-left,
.gallery-image-right {
  position: absolute;
  opacity: 1;
  bottom: 0;
}

.gallery-image-right {
  grid-column: auto;
  left: auto;
  right: 0;
}
.gallery-image-left {
  grid-column: auto;
  left: 0;
}
.gallery-image-left img,
.gallery-image-right img {
  width: 100%;
}

.why-us-decorative-image {
  position: absolute;
  bottom: 0;
}

.carousel-decorative-image {
  position: absolute;
  bottom: 0;
}
.right .carousel-decorative-image {
  right: 0;
  transform: scaleX(-1);
}
.left .carousel-decorative-image {
  left: 0;
}

.faq-decorative-image {
  position: absolute;
  transform-origin: right center;
  right: 0;
  top: 0;
  transform: translateY(15rem);
}

.reviews-decore-image {
  position: absolute;
  bottom: 0;
  left: 0;
  transform: unset;
}

.reviews__container {
  position: unset;
}
.reviews__giraffe {
  transform: translate(-22.375rem, 5.75rem);
}
.reviews__elephant {
  transform: translate(-23.1875rem, 11.75rem);
}
.reviews__b-title span.title-before {
  color: #000;
}
.reviews__b-title .title-after {
  color: #585858;
  font-weight: 300;
}

.create-journey__giraffe {
  transform: scaleX(1) translate(15.1875rem, 18.5rem);
}
.create-journey__elephant {
  transform: translate(0.8125rem, 59.125rem);
}

/* ==================== MISC ==================== */

picture {
  display: flex;
}

.social--fb {
  color: #fff;
  transition:
    color 0.3s,
    background-color 0.3s;
}
.social--fb:hover {
  color: #3aefff;
}

.breadcrumbs {
  display: block !important;
}
.breadcrumbs__container.--tour {
  padding-left: 0;
}
.breadcrumbs ul li:not(:last-child):after {
  display: inline;
}

.breadcrumbs li,
.breadcrumbs li a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.large-breadcrumb-margin {
  margin-bottom: 4.5625rem;
}
.tour_breadcrumbs {
  margin-bottom: 42px;
}

.search-mobile {
  width: 100%;
  border-top: 0.0625rem solid #d4d4db;
  border-bottom: 0.0625rem solid #d4d4db;
  padding: 20px 0;
}

.search-mobile.blog-search-mobile {
  border-top: none;
  padding-top: 0;
}

.itinerary__button-download svg path {
  fill: #ff8300;
}
.itinerary__button-download:hover svg path {
  fill: white;
}
.itinerary__container.--tour {
  padding-left: 15px;
}

.disable-btn {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}
.default-disabled {
  color: rgba(74, 86, 96, 0.4) !important;
  background: transparent !important;
  border-color: transparent;
  cursor: not-allowed !important;
  pointer-events: none;
}

.add-person-block {
  margin-top: 25px;
}
.extra-rooms-before {
  margin-bottom: 40px;
}

.hotel-counter-blocks {
  margin-bottom: 3.5rem;
}
.hotel-counter-blocks:has(+ .register__button[style*="display: none"]) {
  margin-bottom: 7.125rem;
}

.info-spoilers__text h3,
.info-spoilers__text h2 {
  line-height: 1;
  font-size: 1.5rem;
  font-weight: 500;
}
.info-spoilers__text h4 {
  font-weight: 600;
}

.info-spoilers__text h3:not(:first-child) {
  margin-top: 1.5rem;
}

.info-spoilers__text h2 {
  margin-bottom: 25px !important;
}
.info-spoilers__text h4 {
  color: #373737;
}

.no-rates-label {
  margin-bottom: 25px;
}
.no-rates-label p {
  font-size: 20px;
}
.hotels-tour__block.hotels-tour__block--rates {
  margin-bottom: 0;
}

.brochure-popup-text p {
  line-height: 22px;
}
.brochure-popup-text p:last-of-type {
  margin-bottom: 46px;
}
.brochure-popup-text h3 {
  margin-bottom: 65px;
  font-size: 47px;
}

.map-tour__body {
  max-height: 1046px;
  height: 100%;
}

.btn-loader {
  width: 28px;
  height: 28px;
  border: 3px solid rgba(0, 0, 0, 0.3);
  border-top-color: #000;
  border-radius: 50%;
  display: inline-block;
  animation: spin 0.7s linear infinite;
  vertical-align: middle;
  box-sizing: border-box;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.subcat-tours-button {
  max-width: 463px;
  width: 100%;
  margin: 0 45px 0 auto;
}

.subcat-tours-button-mobile {
  display: block;
  max-width: 463px;
  width: 100%;
  margin: 35px auto 0;
}

.gallery-popup__main .splide__slide {
  border: none;
  aspect-ratio: unset !important;
}

.popup--gallery .js-gallery-description {
  display: inline;
  line-height: 1.4;
  min-height: calc(1.4em * 2);
  /* display: flex;
    gap: 10px; */
}

/* .popup--gallery .js-gallery-description-title,
.popup--gallery .js-gallery-description-text {
    display: block;
} */

.popup--gallery .js-gallery-description-title:not(:empty) {
  margin-bottom: 0.25rem;
}

.gallery-popup__thumb img {
  position: absolute;
}
.gallery-home {
  align-items: start;
}

.form-footer__captcha,
.none-bg {
  background: unset;
}

.form-footer__captcha .g-recaptcha {
  transform: scale(0.86);
  transform-origin: 0 0;
}

.form-footer__captcha {
  height: 65px;
  overflow: unset;
  width: 259px;
}
.rcp-wrapper {
  display: flex;
}

.radio__icon input {
  cursor: pointer;
}
.header.non_shadow:after {
  background: unset;
}

.faq__spoilers {
  margin-bottom: 100px !important;
}

.tours-sub__item.item-tours-sub img {
  position: absolute;
}

.list-subitems {
  margin: 20px 0 0 20px;
}
.field-star {
  position: absolute;
}
.submenu__link:hover {
  color: #000;
}
.carousel-item__title {
  margin: 0 auto;
  width: 100%;
}
.swiper-slide {
  min-width: 293px !important;
}

.wpml-ls-statics-footer,
.otgs-development-site-front-end {
  display: none;
}

.images-footer__container {
  justify-content: center;
}

.transparent-calendars span.flatpickr-day.flatpickr-disabled {
  color: rgba(74, 86, 96, 0.4);
}

.checkbox:hover .checkbox__icon {
  border-color: #d4d4d8;
}

/* Logo switching */
.--header-scroll .main_logo,
.header--white .main_logo {
  display: none;
}

.dark_logo {
  display: none;
}

.--header-scroll .dark_logo,
.header--white .dark_logo {
  display: block;
}

.header:has(.menu__item._active) .dark_logo {
  display: block !important;
}
.header:has(.menu__item._active) .main_logo {
  display: none !important;
}

/* Merged .header__logo img (was split across 2 rules) */
.header__logo img {
  aspect-ratio: 302 / 62;
  display: block;
  height: max-content;
  min-height: 0;
  object-fit: contain;
  width: 18.875rem;
}

.personal-info-j__field .iti__country-container,
.gray-iti .iti__country-container {
  background: #f9f9f9;
  border: 0.0625rem solid #d2d2d2;
  border-radius: 0.25rem;
}

.page__register .form-footer__captcha {
  margin-top: 26px;
}
.info-payment__text h4 {
  margin-bottom: 0 !important;
}
.info-payment__text p {
  margin-bottom: 35px !important;
}

.item-blog__image.relative img {
  position: absolute;
}

.thank-popup .thanks-popup__text {
  line-height: 36px;
}
.thank-popup h3 {
  font-weight: 400;
}
.thank-popup p {
  font-size: 18px;
}
.thank-popup p:last-child {
  margin-top: 25px;
}

.expired-message-wrapper h2 {
  font-size: 28px;
  color: #b80000;
  margin-bottom: 20px;
  margin-top: 70px;
}
.expired-message-wrapper p {
  font-size: 18px;
  color: #333;
  margin-bottom: 60px;
}

.brochure-popup__form .field__input:not(:last-child) {
  margin-bottom: 0;
}
.footer__form .field__input:not(:last-child) {
  margin-bottom: 0;
}

.footer__form .field.field--error .field__error {
  top: 55px;
  padding-top: 3px;
  padding-bottom: 3px;
}

.page__create-journey .hero-journey__title {
  max-width: 740px;
}

.free-text h2 {
  margin-bottom: 30px !important;
}
.free-text ul li:before {
  margin-top: 1rem;
}
.free-text p {
  margin-bottom: 15px;
}

.wrapper-btn-details-journey {
  margin-top: -50px;
  margin-bottom: 21px;
  position: relative;
  display: contents;
}

.wrapper-btn-details-journey.is-private-day {
  margin-top: 40px;
}

.payment-amount-field.field.field--error .field__error {
  top: 115px;
}

.gallery-popup__hotel-title {
  text-align: center;
  position: relative;
  top: 10px;
}

.tours__breadcrumbs.breadcrumbs ul {
  display: flex;
  align-items: flex-end;
  gap: 5px;
}

.info-spoilers__text h3 {
  position: relative;
  padding: 10px 0;
  display: inline-block;
}

.info-spoilers__text h3::before,
.info-spoilers__text h3::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}

.info-spoilers__text h3::before {
  top: 0;
}

.info-spoilers__text h3::after {
  bottom: 0;
}

.journey-tour__button-button-wrapper {
  width: 100%;
  justify-items: end;
}

/* ── Блок цены и кнопки на странице тура ── */
.tour-page-price-cta {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border: 0.0625rem solid #d4d4d8;
  border-radius: 0.625rem;
  padding: 22px 24px 39px;
  margin-bottom: 46px;
  text-align: center;
}
.tour-page-price-cta__info {
  display: flex;
  flex-direction: column;
  gap: 17px;
  align-items: center;
}
.tour-page-price-cta__label {
  font-size: 23px;
  color: #000000;
}

.tour-page-price-cta__price {
  font-size: 45px;
  font-weight: 500;
  color: #000;
  line-height: 1.2;
}
.tour-page-price-cta__symbol {
  font-size: 45px;
  font-weight: 500;
}
.tour-page-price-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #585858;
  border: 1px solid #ffffff;
  box-shadow: 0px 2px 2px 0px #00000040;
  color: #fff !important;
  padding: 17px 50px;
  font-size: 23px;
  font-weight: 500;
  letter-spacing: 0.2px;
  text-transform: uppercase;
  border-radius: 0.25rem;
  white-space: nowrap;
  max-width: 296px;
  text-decoration: none !important;
  transition: background-color 0.2s;
}
.tour-page-price-cta__btn:hover {
  background-color: #333;
}

.tour-page-price-cta.mobile {
  margin-inline: 10px;
  align-items: center;
  margin-top: 20px;
  margin-bottom: 15px;
}

.tour-page-price-cta.mobile .tour-page-price-cta__info {
  gap: 6px;
}

/* ==================== MEDIA QUERIES ==================== */

/* min-width: 47.9988em (~768px) */
@media (min-width: 47.9988em) {
  .position-bottom.right .carousel-home__elephant.elephant {
    transform: scaleX(-1) translate(-16.1875rem, 24.125rem);
  }

  .position-bottom.right .carousel-home__giraffe.giraffe {
    transform: scaleX(-1) translate(-15.1875rem, 4.125rem);
  }

  .country-tab-header {
    padding-top: 11px !important;
  }
  .popup--review .popup__close {
    padding: 10px;
  }
  .popup__body:not(.popup--brochure .popup__body) {
    min-height: 668px;
  }
  .popup-footer .popup__body {
    max-height: 668px;
    height: 100% !important;
  }
  .sticky-spoiler {
    position: sticky;
    top: 130px;
  }

  .blog__container .blog__items {
    display: grid;
    gap: 6.25rem 2.75rem;
    grid-template-columns: repeat(2, 1fr);
  }

  .show-mobile {
    display: none !important;
  }
  .show-desktop {
    display: block;
  }
  .show-desktop-inline {
    display: inline;
  }

  .page__booking .journey-tour__giraffe {
    transform: scaleX(1) translate(-4.625rem, 8.125rem) !important;
    width: 24.9375rem;
  }

  .page__booking .journey-tour__elephant {
    transform: scaleX(1) translate(-2.9375rem, 26.6875rem);
    width: 31.75rem;
  }

  .col-mdh-span-2 {
    grid-column: span 2;
  }

  .field.field--error .field__error {
    top: 85px;
  }
}

/* min-width: 47.9988em and max-width: 47.9988em special */
@media (min-width: 47.9988em) and (max-width: 88.75em) {
  .form-footer__captcha:has(.field__error:not(.hidden)) {
    margin-bottom: 65px;
  }
}

@media (max-width: 47.9988em) {
  .form-footer__captcha:has(.field__error:not(.hidden)) {
    margin-bottom: 50px;
  }
  .details-journey__form.tour_with_rate {
    grid-template-columns: 1fr;
  }
}

/* hover */
@media (any-hover: hover) {
  .hero__link:hover {
    background-color: #8fe1e9 !important;
    border-color: #fff;
    color: #fff;
  }
}

/* max-width: 61.9988em (~992px) */
@media (max-width: 61.9988em) {
  .details-journey__form.group-tour-form,
  .details-journey__form.private_day {
    grid-template-columns: 3fr 2fr 2fr;
    row-gap: 1.9375rem;
    column-gap: 0.9375rem;
  }

  .details-journey__form.private_day {
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 18px;
  }

  .custom-grid-column-select {
    grid-column: span 1;
  }
  .details-journey__form:not(.private_day)
    .field.field--error
    .counter
    .field__error {
    top: 116px;
  }
  .details-journey__form.private_tour_rates
    .field.field--error
    .counter
    .field__error {
    top: 80px;
  }
  .details-journey__form.private_no_rates
    .field.field--error
    .counter
    .field__error {
    top: 80px;
  }
  .item-tours-sub__image {
    flex-basis: 21.5%;
  }
  .details-journey__form.private_tour_rates {
    margin-bottom: 32px;
  }
}

/* max-width: 74.9988em (~1200px) */
@media (max-width: 74.9988em) {
  .details-journey__form.private_day,
  .details-journey__form.group-tour-form {
    grid-template-columns: repeat(2, 1fr);
  }
  .custom-grid-column-select {
    grid-column: span 2;
  }
  .details-journey__field.field {
    margin-bottom: 0;
  }
  .subcat-tours-button {
    display: none;
  }
  .tours-sub__info {
    position: initial;
  }
}

@media (min-width: 74.9988em) {
  .subcat-tours-button-mobile {
    display: none;
  }
}

/* min-width: 61.8125em (989px) — show/hide table helpers */
@media (min-width: 61.8125em) {
  .show-table {
    display: none !important;
  }
  .hide-table {
    display: block;
  }
}

/* max-width: 81.2488em (~1300px) */
@media (max-width: 81.2488em) {
  .popup--brochure [data-fls-popup-body] {
    padding: 5.625rem 1.875rem;
  }
  .header__logo img {
    width: 9.375rem;
  }
  .rooms-error {
    top: 69%;
  }
}

@media (min-width: 81.2488em) {
  .register__block--details .register__field:nth-child(4) {
    flex-basis: auto;
  }
}

/* max-width: 99.9988em (~1600px) */
@media (max-width: 99.9988em) {
  .header__logo img {
    width: 12.5rem;
  }
}

/* max-width: 109.374em */
@media (max-width: 109.374em) {
  .details-journey__form.private_day {
    column-gap: 0.9375rem;
  }
  .details-journey__form.group-tour-form {
    column-gap: 2.0625rem;
  }
}

@media (max-width: 782.99px) {
  .hero-about {
    margin-top: calc(var(--header-height) - 45px);
  }
}

/* max-width: 47.9988em (~768px) — все 768px/767px/767.98px/767.99px объединены */
@media (max-width: 47.9988em) {
  /* FAQ */
  .faq--main .faq__hero .hero-journey__icon {
    top: -0.7rem;
  }
  .faq__spoilers:not(:last-child) {
    margin-bottom: 1.75rem !important;
  }
  .faq-decorative-image {
    display: none;
  }

  /* Tour container */

  .tour__container {
    margin-bottom: 5px !important;
  }
  .tour__wrapper {
    margin-top: 15px;
  }
  .tour__container button {
    white-space: normal;
    display: flex;
    justify-content: center;
  }
  .tour__navigation button svg {
    height: 21px;
    width: 22px;
  }
  .tour_breadcrumbs {
    margin-bottom: 18px;
  }

  /* Video */
  .post__text p:has(.video-placeholder) {
    margin-bottom: 10px !important;
  }
  .videobox__play {
    border: 0.0625rem solid #fff;
    border-radius: 0.53125rem;
    width: 4.09375rem;
  }
  .videobox__play svg {
    transform: translate(6%, 4%);
  }

  /* Blog */
  .blog__actions {
    align-items: start;
  }
  .blog__header-pagination {
    justify-content: center !important;
    margin: 20px 0;
  }
  .blog__container .blog__items {
    gap: 1.4375rem;
    grid-template-columns: 1fr;
  }
  .blog__header.blog__header-text h2 {
    font-size: 1.25rem;
    font-weight: 500;
  }
  .blog__header.blog__header-text .blog__text {
    padding-bottom: 20px;
  }
  .blog__post p:has(img) + h5 {
    margin-top: -20px;
  }
  [data-fls-popup="blog-journey"] .thanks-popup__image {
    width: 37px;
  }

  /* About page */
  .page-About .info-home__text h2 {
    margin-bottom: 30px !important;
  }
  .page-About .info-home__text h3 {
    margin-bottom: 24px !important;
    text-align: center;
  }
  .info-home__body.page-About .info-home__buttons {
    margin-top: 35px;
  }
  .home-About .info-home__container {
    padding-bottom: 40px;
  }

  /* Feedback */
  .item-feedback__body {
    max-height: 68%;
  }

  /* Tours sub */
  .item-tours-sub__title.title {
    margin-bottom: 0 !important;
  }
  .item-tours-sub__text-link {
    margin-top: 20px;
  }
  .item-tours-sub__actions {
    max-width: 75px;
  }
  .item-tours-sub__title.title.text-left a {
    line-height: 18px;
  }
  .tours-sub__title-h2 h2 {
    color: #040404;
    font-size: 1.25rem;
    font-weight: 500;
    text-align: center;
  }
  .tours-sub__header h2 {
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0;
  }
  .tours-sub__header p {
    display: none;
  }

  .tours__header.tours-sub-category-list h2 {
    font-size: 24px !important;
  }

  .tours-sub__header.tours-sub-category-list p {
    display: block;
  }
  .tours-sub__header p:last-child {
    margin-bottom: 0;
  }

  /* Sticky */
  .sticky {
    top: 43px;
  }

  /* Form footer */
  .form-footer__field.field.field--error {
    margin-bottom: 25px;
  }

  /* Journey B title */
  .journey-tour__b-title {
    margin-left: auto;
    margin-right: auto;
  }

  /* Thanks popup */
  .thanks-popup .thanks-popup__text h3 {
    max-width: 270px;
    margin: 0 auto 20px;
  }
  .popup--review [data-fls-popup-body] {
    padding: 60px 1.875rem !important;
  }
  .popup--review .popup__body {
    width: 371px;
    height: auto;
    padding: 22px 17px 30px;
    gap: 31px;
  }
  .popup--review .popup__close {
    width: 13px;
    height: 13px;
    top: 20px;
    left: 15px;
  }
  .thanks-popup__text h3 {
    font-size: 18px;
  }
  .thanks-popup {
    width: 100%;
    max-width: 337px;
    gap: 15px;
  }
  .thanks-popup__image {
    width: 86px;
    height: auto;
  }
  .thanks-popup__text {
    max-width: 337px;
    font-size: 15px;
    line-height: 20px;
    margin-top: 6px;
  }
  .thanks-popup__text p {
    margin: 0;
    text-align: center;
  }
  .popup h3 {
    font-size: 20px;
  }
  h3 {
    font-size: 20px;
    line-height: 30px;
    max-width: 337px;
  }

  /* Footer popup */
  .thanks-popup__text.footer-popup h2 {
    font-size: 20px;
  }
  .thanks-popup__text.footer-popup {
    font-size: 15px;
  }
  .popup-footer .thanks-popup__image {
    max-width: 85px;
    margin-bottom: 10px;
  }

  /* Info home */
  .info-home__text,
  .why-us-h__text p,
  .mob-16,
  .font-16 {
    font-size: 16px;
    line-height: 23px;
  }
  .info-page .faq__text,
  .faq-spoilers__text,
  .page-About.Us p {
    font-size: 16px;
    line-height: 23px;
  }
  .home .hero__container {
    margin-top: 50px;
  }
  .info-home__illustration {
    width: 168px;
  }
  .info-home--buttons {
    padding: 36px 10px;
  }

  /* Item tours image */
  .item-tours__image {
    min-height: 280px;
  }

  .tours__item.item-tours.s .item-tours__image {
    min-height: 362px;
  }

  .category__sub-title { font-size: 15px;}
  .category__text {font-size: 15px;}

  /* Breadcrumbs */
  .breadcrumbs__container {
    padding: 0 10px;
  }
  .large-breadcrumb-margin {
    margin-bottom: 1.5625rem;
  }

  .tour-nav-btn {
    padding: 23px 20px !important;
  }
  .mb-w-full {
    width: 100%;
  }

  /* Journey form */
  .details-journey__form.group-tour-form,
  .details-journey__form.private_day {
    grid-template-columns: 1fr;
  }
  .details-journey__form:not(.private_day)
    .field.field--error
    .counter
    .field__error {
    top: 80px;
  }
  .details-journey__form.private_tour_rates {
    margin-bottom: 0;
  }
  .details-journey__field.field {
    margin-bottom: 10px;
  }
  .private_no_rates .details-journey__field.field {
    margin-bottom: 10px;
  }
  .private_tour_rates .details-journey__field.field {
    margin-bottom: 10px;
  }
  .private_tour_rates .custom-grid-col-price-room {
    grid-column: span 1;
  }
  .custom-grid-column-select {
    grid-column: span 1;
  }
  .hotel-counter-blocks:has(+ .register__button[style*="display: none"]) {
    margin-bottom: 3.4375rem;
  }

  /* Booking animals */
  .page__booking .journey-tour__giraffe {
    transform: translate(0.125rem, 6.25rem);
    width: 6.3125rem;
    opacity: 0.8;
  }

  .journey-tour__elephant {
    aspect-ratio: 85 / 143;
    left: 0;
    transform: translateY(-5.75rem);
    width: 5.3125rem;
    opacity: 1;
    bottom: -280px;
  }

  .journey-tour__giraffe {
    aspect-ratio: 475 / 584;
    transform: translate(10.0625rem, 4.0625rem) !important;
    width: 16.3125rem !important;
    opacity: 1;
    bottom: -280px;
  }

  /* Journey booking */
  .journey-tour__booking-body {
    padding-bottom: 7.0625rem;
    padding-top: 1.5rem;
  }
  .tours__button {
    max-width: 100%;
  }

  /* Country input */
  .country-input-payment {
    font-size: 1rem;
  }

  /* Dates popup */
  .dates-popup__title,
  .left-right-auto-mb {
    margin-left: auto;
    margin-right: auto;
  }

  /* Free content */
  .free-content .info-home__text h3 {
    font-weight: 400;
  }

  /* Logo */
  .dark_logo,
  .--header-scroll .dark_logo,
  .header--white .dark_logo,
  [data-fls-menu-open] .header .main_logo {
    display: flex;
  }
  .main_logo,
  [data-fls-menu-open] .header .dark_logo {
    display: none;
  }

  /* Info spoilers */
  .info-spoilers__text h3,
  .info-spoilers__text h2 {
    font-size: 1rem;
  }

  /* Brochure popup */
  .popup--brochure [data-fls-popup-body] {
    padding: 6.125rem 1.0625rem 2.5625rem;
  }
  .popup--brochure .popup__close {
    font-size: 0.8125rem;
    left: 1.125rem;
    top: 1.375rem;
  }
  ._icon-close-popup {
    width: 13px;
    height: 13px;
  }
  .brochure-popup-text p:last-of-type {
    margin-bottom: 30px;
    font-size: 14px;
  }
  .brochure-popup-text h3 {
    margin-bottom: 30px;
    font-size: 24px;
  }

  /* Reviews */
  .reviews-decore-image {
    display: none;
  }

  /* Header */
  .header--404 {
    box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.1);
  }

  /* Gallery decorative */
  .gallery-image-right {
    width: 18.5625rem;
    transform: translate(5.625rem, -5.4375rem);
  }
  .gallery-image-left {
    transform: translate(-111px, 7px);
    width: 20.9375rem;
  }
  .why-us-decorative-image img {
    width: 142%;
  }
  .carousel-decorative-image img {
    width: 150px;
  }

  /* Post table */
  .post__text.text table {
    margin-bottom: 12px;
  }
  .post__text.text tr {
    display: flex;
    flex-direction: column;
  }
  .post__text.text td {
    width: 100% !important;
    padding: 0 0 15px 0;
  }
  .post__text.text td:first-child,
  .post__text.text td:last-child {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Splide */
  .splide__track-strip {
    padding-right: 60px !important;
  }

  /* Registration */
  .registration-decorative-image {
    display: none;
  }

  /* Thank popup */
  .thank-popup p {
    font-size: 15px;
  }
  .thank-popup .thanks-popup__text p:first-of-type br {
    display: none !important;
  }
  .thank-popup p:last-child {
    margin-bottom: 0;
  }
  .thank-popup .thanks-popup__text {
    line-height: 20px;
  }

  /* Subcat button */
  .subcat-tours-button-mobile {
    margin-top: 8px;
  }

  /* rcp */
  .rcp-wrapper {
    flex-direction: column;
    margin-top: 30px;
  }
  .payment__button {
    margin: 25px 0 0 0;
  }
  .create-journey__captcha {
    margin-bottom: 30px;
  }

  /* Create journey */
  .page__create-journey .hero-journey__title {
    max-width: 340px;
  }

  /* Summary */
  .summary-journey {
    max-width: 100%;
  }

  /* Youtube */
  .youtube-strip-description {
    margin-top: 20px;
  }

  /* Gallery popup */
  .popup--gallery .gallery-popup__main .splide__slide {
    display: flex;
    flex-direction: column;
  }
  .popup--gallery .gallery-popup__main .gallery-popup__main-image {
    height: 100%;
    object-fit: contain;
    width: 100%;
  }
  /* Misc */
  .mt-md-20 {
    margin-top: 20px;
  }
  .private_tour_rates .details-journey__field.second-field {
    margin-top: 35px;
  }

  .no-rates-label p {
    font-size: 14px;
    text-align: center;
    padding: 0 12px;
  }

  .small-image-calendar {
    bottom: -72px;
  }
  .small-image-calendar img {
    width: 150px;
  }

  .tour-page-price-cta {
    flex-direction: column;
    align-items: stretch;
    padding: 15px 20px;
    width: calc(100% - 20px);
    min-width: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .tour-page-price-cta__btn {
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    padding: 17px 14px;
  }

  .tour-page-price-cta__price,
  .tour-page-price-cta__symbol {
    font-size: 24px;
  }
  .tour-page-price-cta__label {
    font-size: 14px;
  }
  .tour-page-price-cta__btn {
    font-size: 18px;
  }
}

/* min-width: 47.9988em and max-width: 107.438em */
@media (min-width: 47.9988em) and (max-width: 107.438em) {
  .page__create-journey .hero-journey__title {
    max-width: 540px;
  }
}

/* min-width: 34.375em and max-width: 47.9988em */
@media (min-width: 34.375em) and (max-width: 47.9988em) {
  .personal-info-j__form {
    padding-bottom: 1.1875rem;
  }
}

/* min-width: 23.4375em and max-width: 107.438em */
@media (min-width: 23.4375em) and (max-width: 107.438em) {
  .tours-sub-category-list p {
    font-size: 18px;
    line-height: 27px;
  }
}

@media (max-width: 34.375em) {
  .details-journey__form.private_day {
    grid-template-columns: 1fr;
  }
  .gallery-popup__hotel-title {
    top: 15px;
  }
}

/* min-width: 107.438em */
@media (min-width: 107.438em) {
  .tours-sub-category-list h2 {
    font-size: 4.375rem;
  }
}

/* max-width: 68.75em (1100px) — fixed roadmap */
@media (max-width: 68.75em) {
  .fixed-roadmap-wrapper.roadmap-js.is-fixed {
    top: 68px !important;
  }
}

/* max-width: 95.625em (1530px) — payment footer */
@media (max-width: 95.625em) {
  .payment__footer {
    flex-direction: column;
  }
}

/* max-width / min-width: 40.625em (650px) */
@media (max-width: 40.625em) {
  .payment__block--card .payment__field:first-child,
  .payment__block--card .payment__field:nth-child(2),
  .payment__card-data .field .year-select .select,
  .payment__card-data .field .month-select .select,
  .payment__field--card-num,
  .payment__field--cvc .field__input input,
  .payment__block--card .payment__field:nth-child(5) {
    width: 100%;
    max-width: 100%;
  }

  .payment__card-data {
    flex-direction: column;
    gap: 0.9375rem;
  }

  .field__card-data .field {
    flex-grow: 1;
  }
  .payment__field--cvc .field__input {
    width: 55%;
  }
}

@media (min-width: 40.625em) {
  .payment__block--card .payment__field:first-child,
  .payment__block--card .payment__field:nth-child(2) {
    max-width: 369px;
  }
  .year-select {
    padding-right: 37px;
  }
}

/* max-width: 37.5em (600px) */
@media (max-width: 37.5em) {
  .rooms-error {
    top: 79%;
    left: 25%;
  }
}

/* max-width: 35.6238em */
@media (max-width: 35.6238em) {
  .itinerary__button {
    max-width: 100%;
    width: 100%;
  }
}

/* max-width: 33.75em (540px) */
@media (max-width: 33.75em) {
  .site,
  .header {
    width: 100vw;
  }

  .tour_with_rate .field.field--error .field__error {
    top: 74px;
  }
}

/* min-width: 33.7488em and max-width: 107.438em */
@media (min-width: 33.7488em) and (max-width: 107.438em) {
  .tours-sub-category-list h2 {
    font-size: clamp(1.375rem, 0.0010283964625rem + 4.0711777578vw, 4.375rem);
  }
}

/* max-width: 30em (480px) */
@media (max-width: 30em) {
  .info-home.home-About {
    padding-top: 10px;
  }
}

@media (max-width: 767px) {
}

.item-tours-sub__price span.price__presymbol {
  color: #585858;
  font-weight: 400;
  font-size: 20px;
}
