@font-face {
	font-family: 'Manpore';
	src: local('Manpore Regular'),
		url('../fonts/Manrope-Regular.woff') format('woff');    
	font-display: swap;
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'Manpore';
	src: local('Manpore Medium'),
		url('../fonts/Manrope-Medium.woff') format('woff');  
	font-display: swap;
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Manpore';
	src: local('Manpore Bold'),
		url('../fonts/Manrope-Bold.woff') format('woff');    
	font-display: swap;
	font-weight: 700;
	font-style: bold;
}

@font-face {
	font-family: 'Helvetica';
	src: local('Helvetica Light'),
		url('../fonts/Helvetica-Light.woff') format('woff');    
	font-display: swap;
	font-weight: 300;
	font-style: light;
}

@font-face {
	font-family: 'Helvetica';
	src: local('Helvetica Regular'),
		url('../fonts/Helvetica.woff') format('woff');  
	font-display: swap;
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'Helvetica';
	src: local('Helvetica Bold'),
		url('../fonts/Helvetica-Bold.woff') format('woff');    
	font-display: swap;
	font-weight: 700;
	font-style: bold;
}

:root {
    --main-dark-yellow: #ffd02b;
	--main-black: #000;
	--main-white: #f2f2f2;
	--secondary-light-yellow: #ffd955;
    --other-bland-yellow: #F8DA70;
	--secondary-dark-color: #303030;
	--secondary-dark-gray: #989b9f;
	--others-bg-2: #272727;
	--others-bg-tone: #585252;
	--others-dark: #272727;
	--others-gray: #e0dede;
	--others-error: #d00000;
    --border-color: rgba(0, 0, 0, 0.2);
    --font-family: "Helvetica", sans-serif;
    --second-family: "Manrope", sans-serif;
}

* {
    box-sizing: border-box;
}

a {
    text-decoration: none;
}

ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

img {
    max-width: 100%;
}

*:focus-visible {
    outline: 0;
}

body {
    position: relative;
    font-family: var(--font-family), Helvetica, sans-serif;
    line-height: 1;
    font-weight: 300;
}

html {
    font-family: var(--font-family), sans-serif;
    min-width: 320px;
    background-color: var(--main-black);
}

.body-scroll {
    overflow-y: hidden;
}

button {
    background-color: transparent;
    border: transparent;
    cursor: pointer;
    padding: 0;
}

h1, p {
    margin-top: 0;
}

.mobile-menu,
.mobile-menu-toggle {
    display: none;
}

.container {
    margin: 0 auto;
    padding: 0 70px;
    max-width: 1440px;
    background-color: var(--main-black);
    color: var(--main-white);
}

.header {
    position: relative;
}

.header__container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-top: 70px;
    padding-bottom: 30px;
    font-family: var(--second-family);
}

.header__logo {
    margin-right: 30px;
}

.header__nav, .header__nav-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header__nav-list {
    width: 100%;
    margin-right: 24px;
}

.header__nav-link {
    display: flex;
    align-items: center;
    margin-right: 10px;
    padding-top: 6px;
    padding-bottom: 6px;
    color: var(--main-white);
    font-size: 20px;
    line-height: 1;
    font-weight: 300;
    transition: color 0.2s ease-in-out;
}

.header__nav-link:hover {
    color: var(--secondary-light-yellow);
}

.header__nav-link:active {
    color: var(--main-dark-yellow);
}

.header__nav-link:focus-visible {
    outline: 1px solid var(--main-white);
}

.header__action-link {
    padding-left: 34px;
    background-image: url(../img/act-ic.svg);
    background-position: left center;
    background-repeat: no-repeat;
}

.header__car-link {
    padding-left: 38px;
    background-image: url(../img/car-ic.svg);
    background-position: left center;
    background-repeat: no-repeat;
}

.header__btn-more {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 35px;
    padding: 10px 42px;
    color: var(--main-white);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
    border-radius: 30px;
    background-color: rgba(113, 113, 113, 0.4);
    white-space: nowrap;
    height: 44px;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

.header__btn-more:hover {
    background-color: var(--secondary-light-yellow);
    color: var(--main-black);
}

.header__btn-more:active {
    background-color: var(--main-dark-yellow);
    color: var(--main-black);
}

.header__btn-more:focus-visible {
    outline: none;
}

.menu-toggle {
    background: none;
    border: none;
    cursor: pointer;
}

.menu-toggle:hover svg path {
    stroke: var(--secondary-dark-gray);
}

.menu-toggle:active svg path {
    stroke: var(--main-white);
}

.menu-toggle:focus-visible {
    outline: 1px solid var(--main-white);
}
  
.menu-list {
    display: none;
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 70px;
    right: 70px;
    background: var(--others-bg-2);
    padding: 20px;
    border-radius: 18px;
}
  
.menu-list.show {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 40px;
}

.menu-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
    padding-left: 40px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: var(--main-dark-yellow);
    font-size: 20px;
    line-height: 1;
    font-weight: 300;
    background-repeat: no-repeat;
    background-position: left center;
}

.menu-1 {
    background-image: url(../img/menu-1.svg);
}

.menu-2 {
    background-image: url(../img/menu-2.svg);
}

.menu-3 {
    background-image: url(../img/menu-3.svg);
}

.menu-4 {
    background-image: url(../img/menu-4.svg);
}

.submenu {
    padding-left: 40px;
}

.submenu-item {
    margin-bottom: 10px;
}

.submenu-link {
    color: var(--main-white);
    font-size: 18px;
    line-height: 1.5;
    font-weight: 300;
    transition: color .2s ease-in-out;
}

.submenu-link:hover {
    color: var(--other-bland-yellow);
}

.submenu-link:active {
    color: var(--main-dark-yellow);
}

.submenu-link:focus-visible {
    outline: 1px solid var(--main-white);
}

.section-main__container {
    padding: 50px;
    background-image: url(../img/main.jpg);
    background-size: cover;
    border-radius: 40px;
    font-family: var(--font-family);
}

.section-main__content {
    width: 60%;
}

.section-main__descr {
    width: 80%;
    margin-top: 0;
    color: var(--main-white);
    font-size: 20px;
    line-height: 1.3;
    font-weight: 300;
}

.section-main__heading {
    margin-top: 0;
    margin-bottom: 24px;
    color: var(--main-white);
    font-size: 56px;
    line-height: 1.3;
    font-weight: 300;
}

.section-main__color-heading {
    display: block;
    color: var(--main-dark-yellow);
}

.btn-order {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 45px 10px 18px;
    border-radius: 24px;
    background-color: var(--main-white);
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
    background-image: url(../img/Arrow_right_light.svg);
    background-position: right ;
    background-repeat: no-repeat;
    transition: background-color 0.2s ease-in-out;
}

.btn-order:hover {
    background-color: var(--secondary-light-yellow);
}

.btn-order:active {
    background-color: var(--main-dark-yellow);
}

.btn-order:focus-visible {
    background-color: var(--main-white);
}

.section-main__filters {
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-color: var(--main-white);
    margin-bottom: 125px;
    padding: 16px;
    border-radius: 24px;
}

.section-main__wrap-tabs {
    display: flex;
    margin-bottom: 10px;
}

.tabs-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 4px;
    margin-right: 16px;
    color: var(--secondary-dark-gray);
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
    border-bottom: 1px solid transparent;
}

.tabs-btn__active {
    color: var(--main-black);
    border-bottom: 1px solid var(--main-black);
}

.filter {
    display: flex;
    align-items: center;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    padding: 12px 10px;
    min-height: 46px;
}

.section-main__search-container {
    position: relative;
    margin-right: 8px;
    width: 29%;
}

.section-main__search-form {
    position: relative;
    width: 100%;
    display: flex;
    align-items: end;
    justify-content: center;
}

.tabs-card {
	display: none;
}

.tabs-card__active {
	display: flex;
}

.section-main__search-input {
    display: flex;
    align-items: center;
    padding-left: 28px;
    height: 100%;
    width: 100%;
    font-size: 14px;
    background-color: var(--main-white);
    line-height: 1;
}

.section-main__search-input:focus {
    border-color: var(--main-dark-yellow);
}

.section-main__search-input::placeholder {
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    color: var(--main-black);
}

.section-main__search-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
}

.section-main__search-btn {
    position: absolute;
    top: 30%;
    left: 4px;
    background-image: url(../img/Search.svg);
    background-position: left;
    background-repeat: no-repeat;
    width: 22px;
    height: 46px;
    cursor: pointer;
}

.section-main__search-menu {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 100%;
    padding: 12px;
    border-radius: 12px;
    background: var(--main-white);
    box-shadow: 0 4px 36px rgba(50, 50, 50, 0.3);
    z-index: 10; 
}

.section-main__search-menu.hidden {
    display: none;
}

.section-main__search-menu.active {
    opacity: 1;
    visibility: visible;
}

.section-main__search-item {
    margin-bottom: 10px;
}

.section-main__search-link {
    color: var(--main-black);
    font-size: 14px;
    line-height: 1;
    font-weight: 300;
}

.section-main__search-link:hover, .section-main__search-link:active {
    color: var(--main-dark-yellow);
}

.label {
    margin-bottom: 6px;
    color: var(--main-black);
    opacity: .4;
    font-size: 14px;
    line-height: 1;
    font-weight: 300;
}

.section-main__date-container {
    display: flex;
    flex-direction: column;
    width: 24%;
    margin-right: 8px;
}

.section-main__date-input {
    height: 100%;
    min-height: 46px;
    background-color: var(--main-white);
    background-image: url(../img/Date_today_light.svg);
    background-repeat: no-repeat;
    background-position: right 8px center;
}

/* Стили для кнопки календаря */
.flatpickr-calendar {
    background-color: var(--main-white); 
}

.flatpickr-input {
    color: var(--main-black);
    font-size: 12px;
    background-color: var(--main-white);
}

.flatpickr-input.active {
    border-color: var(--main-dark-yellow);
}

/* Стили для дней недели */
.flatpickr-weekday {
    font-size: 12px;
    color: var(--main-black);
}

/* Стили для выбранной даты */
.flatpickr-day.selected {
    background-color: var(--main-black);
    color: var(--main-white);
    border-radius: 10px;
}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {
    border-radius: 10px;
}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange {
    border-radius: 10px;
}

/* Стили для неактивных дат (например, выходные или заблокированные) */
.flatpickr-day.disabled {
    background-color: #e0e0e0; /* Серый фон для неактивных дней */
    color: #b0b0b0; /* Светлый цвет текста */
}

/* Стили для кнопок навигации */
.flatpickr-prev-month, .flatpickr-next-month {
    color: white;
}

.custom-select {
    position: relative;
    display: inline-block;
    margin-right: 8px;
    width: 24%;
}

.custom-select select {
    display: none;
}

/* Кастомный селект */
.custom-select-trigger {
    position: relative;
    display: flex;
    flex-direction: column;   
    flex-wrap: wrap;
    align-items: start;
    justify-content: center;
    background-color: var(--main-white);
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
    color: var(--main-black);
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.custom-select-trigger::after {
    position: absolute;
    content: "";
    bottom: 18px;
    right: 10px;
    width: 24px;
    height: 16px;
    background-repeat: no-repeat;
    background-image: url(../img/Expand_down_light.svg);
}

.custom-options {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    right: 0;
    width: 100%;
    padding: 12px;
    background-color: var(--main-white);
    border-radius: 12px;
    box-shadow: 0 4px 36px rgba(50, 50, 50, 0.3);
    max-height: 150px;
    overflow-y: auto;
    z-index: 10;
    display: none; 
}

.custom-option {
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
    color: var(--main-black);
    padding: 6px 0px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.custom-option:hover {
    color: var(--main-dark-yellow);
}

.custom-select.open .custom-options {
    display: block;
}

.tourist-select {
    position: relative;
    width: 24%;
    margin-right: 8px;
}

.tourist-select__wrap {
    display: flex;
    flex-direction: column;
}

.select-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 10px;
    height: 100%;
    min-height: 46px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 12px;
    cursor: pointer;
    background-color: var(--main-white);
}

.select-box.active {
    border: 1px solid var(--main-dark-yellow);
}

.selected-text {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--main-black);
}

.icon-people {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    background-image: url(../img/icon-people.svg);
    background-position: center;
}

.icon-arrow {
    width: 24px;
    height: 24px;
    background-image: url(../img/Expand_down_light.svg);
    background-position: center;
    transition: transform 0.3s;
}

.dropdown {
    position: absolute;
    z-index: 2;
    top: 110%;
    left: 0;
    width: 100%;
    background: var(--main-white);
    border-radius: 8px;
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);
    display: none;
    flex-direction: column;
    padding: 10px;
}

.option {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 40px;
    padding: 8px 0;
    border-bottom: 1px solid #b0b0b0;
}

.last-option {
    border: none;
}

.option-text {
    display: flex;
    margin-right: auto;
    margin-left: 8px;
    margin-right: 8px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-black);
}

.option-btn__wrap {
    display: flex;
    align-items: center;
    width: 40%;
}

.plus, .minus {
    width: 30px;
    height: 30px;
    border: none;
    cursor: pointer;
}

.show {
    display: flex;
}

.rotate {
    transform: rotate(180deg);
}

.section-main__btn-form {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    width: 145px;
    margin-top: 0;
    padding: 10px 60px 10px 30px;
    border-radius: 12px;
    background-color: var(--main-dark-yellow);
    font-size: 18px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-black);
    background-image: url(../img/Search-btn.svg);
    background-repeat: no-repeat;
    background-position: right 30px center;
    transition: background-color 0.2s ease-in-out;
}

.section-main__btn-form:hover {
    background-color: var(--secondary-light-yellow);
}

.section-main__btn-form:active {
    background-color: var(--other-bland-yellow);
}

.section-main__btn-form:focus-visible {
    outline: none;
}

.section-change {
    padding-top: 90px;
    padding-bottom: 50px;
}

.heading-h2 {
    margin-top: 0;
    font-family: var(--font-family);
    font-size: 48px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
    font-style: light;
}

.heading-h3 {
    margin-top: 0;
    font-family: var(--font-family);
    font-size: 40px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
    font-style: light;
}

.section-change__heading {
    margin-bottom: 16px;
}

.section-change__descr {
    margin-top: 0;
    margin-bottom: 36px;
    width: 55%;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.3;
    color: var(--main-white);
}

.section-change__nav {
    width: 80%;
    margin-bottom: 40px;
}

.section-change__nav-list {
    display: flex;
    flex-wrap: wrap;
}

.section-change__nav-item {
    margin-bottom: 30px;
}

.section-change__nav-link {
    position: relative;
    display: flex;
    padding-right: 45px;
    padding-left: 10px;
    font-size: 56px;
    font-weight: 300;
    line-height: 1.3;
    color: var(--main-white);
    opacity: 0.4;
    transition: color .2s ease-in-out, opacity .2s ease-in-out;
}

.section-change__nav-link::after {
    content: "/";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 16px;
    height: 77px;
    color: var(--main-white);
}

.section-change__nav-link:hover {
    color: var(--secondary-light-yellow);
}

.section-change__nav-link:hover .section-change__nav-count {
    color: var(--secondary-light-yellow);
}

.section-change__nav-link.active {
    color: var(--main-dark-yellow);
    opacity: 1;
}

.section-change__nav-link.active::after {
    opacity: 0.4;
}

.section-change__nav-link.active .section-change__nav-count {
    color: var(--main-dark-yellow);
}

.section-change__nav-link:focus-visible {
    color: var(--main-white);
    opacity: 0.4;
}

.section-change__nav-count {
    position: absolute;
    top: 0;
    right: 25px;
    width: 20px;
    height: 20px;
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
}

.btn-all {
    display: flex;
    align-items: center;
    width: max-content;
    margin-left: auto;
    padding-right: 62px;
    font-size: 32px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-dark-yellow);
    background-image: url(../img/Arrow_right_yellow.svg);
    background-position: right;
    background-repeat: no-repeat;
    transition: color 0.2s ease-in-out;
}

.btn-all:hover {
    color: var(--secondary-light-yellow);
}

.btn-all:active {
    color: var(--other-bland-yellow);
}

.btn-all:focus-visible {
    color: var(--main-dark-yellow);
}

.section-types {
    position: relative;
}

.section-types__content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 70px;
}

.section-types__heading {
    width: 28%;
    margin-bottom: 0;
}

.section-types__descr {
    width: 50%;
    padding-right: 24px;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.section-types__slider {
    position: relative;
    z-index: 6;
}

.section-types__card {
    position: relative;
    z-index: 10;
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 374px;
    padding: 24px;
    border-radius: 20px;
}

.section-types__card::before {
    content: ""; 
    position: absolute;
    inset: 0; 
    background: rgba(0, 0, 0, 0); 
    transition: background 0.3s ease; 
    z-index: 1; 
    border-radius: 20px; 
}

.section-types__card:hover::before {
    background: rgba(0, 0, 0, 0.5); 
}

.section-types__card:active::before {
    background: rgba(0, 0, 0, 0.7); 
}

.section-types__card:focus-visible::before {
    background: rgba(0, 0, 0, 0); 
}

.section-types__card-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    object-fit: cover;
    transition: opacity 0.2s ease-in-out;
}

.section-types__card-content {
    position: relative;
    z-index: 12;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
}

.card-label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 27px;
    width: max-content;
    border-radius: 30px;
    background-color: rgba(242, 242, 242, 0.4);
    height: 52px;
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
    transition: background-color 0.2s ease-in-out;
}

.card-label:hover {
    background-color: rgba(242, 242, 242, 0.6);
}

.card-label:active {
    background-color: rgba(242, 242, 242, 0.8);
}

.section-types__card-name {
    display: flex;
    align-items: center;
    margin-top: auto;
    margin-bottom: 0;
    padding: 16px 58px 16px 0;
    width: 100%;
    background-image: url(../img/arrow_card.svg);
    background-position: right;
    background-repeat: no-repeat;
    font-size: 36px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
    transition: all 0.2s ease-in-out;
}

.section-types__card-name:hover {
    background-image: url(../img/arrow_card_hover.svg);
}

.section-types__card-name:active {
    background-image: url(../img/arrow_card_click.svg);
}


.section-types__slider {
    margin: 0 auto 110px;
    max-width: 1440px;
}

.sw-btn {
    position: absolute;
    z-index: 2;
    top: 45%;
    display: flex;
    width: 63px;
    height: 63px;
    background-position: center;
}

.sw-btn-right {
    background-image: url(../img/right.svg);
    right: 0;
    justify-content: start;
}

.sw-btn-left {
    background-image: url(../img/right.svg);
    transform: scaleX(-1);
    left: 0;
    justify-content: end;
}

.sw-btn.swiper-button-disabled {
    opacity: .2;
}

.section-types__btn-left, .section-types__btn-right {
    top: 38%;
}

.section-types__pluses-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.section-types__pluses-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 19%;
    padding-top: 20px;
    padding-bottom: 20px;
}

.section-types__pluses-item:not(:last-child) {
    margin-right: 25px;
}

.section-types__item-btn {
    width: 22%;
}

.section-types__pluses-title {
    margin-top: 0;
    margin-bottom: 64px;
    font-size: 56px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
}

.section-types__pluses-text {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.section-types__pluses-link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    background-color: var(--main-white);
    border-radius: 14px;
    padding: 20px 0 20px 20px;
    background-image: url(../img/more-arr.svg);
    background-position: right -20px bottom -20px;
    background-repeat: no-repeat;
    transition: background-color 0.2s ease-in-out;
}

.section-types__pluses-link:hover {
    background-color: var(--secondary-light-yellow);
}

.section-types__pluses-link:active {
    background-color: var(--main-dark-yellow);
}

.section-types__link-title {
    margin-top: 0;
    margin-bottom: 10px;
    color: var(--main-black);
    font-size: 48px;
    font-weight: 300;
    line-height: 1.5; 
    text-align: left;
}

.section-types__link-text {
    display: flex;
    align-items: end;
    width: 100%;
    padding-top: 12px;
    padding-bottom: 12px;
    color: var(--main-black);
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
}

.section-about {
    display: flex;
    justify-content: space-between;
}

.section-about__heading, .section-about__content {
    width: 50%;
}

.section-about__descr {
    margin-top: 0;
    margin-bottom: 16px;
    color: var(--main-white);
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
}

.color-text {
    color: var(--main-dark-yellow);
}

.section-special {
    position: relative;
}

.section-special__slider {
    position: relative; 
    margin-bottom: 40px;
}

.section-special__card {
    position: relative;
    z-index: 10;
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 602px;
    padding: 30px;
    border-radius: 20px;
    cursor: pointer;
}

.section-special__card::before {
    content: ""; 
    position: absolute;
    inset: 0; 
    background: rgba(0, 0, 0, 0); 
    transition: background 0.3s ease; 
    z-index: 1; 
    border-radius: 20px; 
}

.section-special__card:hover::before {
    background: rgba(0, 0, 0, 0.6); 
}

.section-special__card:active::before {
    background: rgba(0, 0, 0, 0.8); 
}

.section-special__card:focus-visible::before {
    background: rgba(0, 0, 0, 0); 
}

.section-special__card-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    object-fit: cover;
}

.section-special__card-content {
    position: relative;
    z-index: 12;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
}

.section-special__wrap-label {
    display: flex;
    margin-bottom: 30px;
}

.section-special__card-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    margin-bottom: 0;
    padding: 14px 50px 14px 30px;
    width: 100%;
    height: 53px;
    background-color: var(--main-white);
    background-image: url(../img/arr_card.svg);
    background-position: right;
    background-repeat: no-repeat;
    font-size: 18px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-black);
    border-radius: 24px;
    transition: background-color 0.2s ease-in-out;
}

.section-special__card-link:hover {
    background-color: var(--secondary-light-yellow);
}

.section-special__card-link:active {
    background-color: var(--main-dark-yellow);
}

.section-special__card-link:focus-visible {
    background-color: var(--main-white);
}

.label-mr {
    margin-right: 14px;
}

.section-special__card-heading {
    margin-top: 0;
    font-size: 36px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.hotel-rating {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.star {
    width: 24px;
    height: 23px;
    margin-right: 6px;
}

.star.full {
    background-repeat: no-repeat;
    background-image: url(../img/stars.svg);
}

.star.empty {
    background-repeat: no-repeat;
    background-image: url(../img/stars_empty.svg);
}

.rating-value {
    font-size: 20px;
    line-height: 1;
    color: var(--main-dark-yellow);
    margin-left: 6px;
}

.section-special__navigaton {
    left: -20px;
    right: -20px;
}

.section-special__btn-all {
    margin-bottom: 100px;
}

.section-special__banner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-image: url(../img/spec-ban.jpg);
    background-position: center;
    min-height: 536px;
    padding: 50px;
    border-radius: 20px;
}

.section-special__banner-heading {
    margin-top: 0;
    margin-bottom: 16px;
    font-size: 48px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.section-special__banner-descr {
    display: flex;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.section-special__btn {
    margin-left: auto;
}

.section-banner__content {
    display: flex;
    flex-direction: column;
    padding: 50px;
    background-image: url(../img/banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;
}

.section-banner__descr {
    margin-top: 0;
    margin-bottom: 280px;
    font-size: 20px;
}

.section-banner__btn {
    margin-left: auto;
}

.section-services__heading {
    margin-bottom: 70px;
}

.section-services__item-border {
    border-top: 1px solid var(--main-white);
    border-bottom: 1px solid var(--main-white);
}

.section-services__link {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 50px;
    font-size: 32px;
    font-weight: 300;
    line-height: 1;
    border-radius: 70px;
    color: var(--main-white);
    background-image: url(../img/arrow-circle.svg); 
    background-position: right 47px center;
    background-repeat: no-repeat;
    position: relative;
    transition: background-color 0.2s ease-in-out, border-radius 0.2s ease-in-out, background-image 0.2s ease-in-out;
}

.section-services__item:hover {
    border: none;
}

.section-services__item:hover .section-services__link {
    border-radius: 70px;
    background-color: rgba(217, 217, 217, 0.3);
    background-image: url(../img/arrow-circle-hov.svg);
}

.section-services__item:active .section-services__link {
    border-radius: 70px;
    background-color: rgba(217, 217, 217, 0.4);
    background-image: url(../img/arrow-circle-hov.svg);
}

.section-services__item:first-child .section-services__link::before {
    display: none;
}

.section-action {
    position: relative;
}

.section-action__slider {
    margin-bottom: 40px;
}

.section-action__card {
    position: relative;
    z-index: 10;
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 589px;
    padding: 30px;
    border-radius: 20px;
}

.section-action__card::before {
    content: ""; 
    position: absolute;
    inset: 0; 
    background: rgba(0, 0, 0, 0); 
    transition: background 0.3s ease; 
    z-index: 1; 
    border-radius: 20px; 
}

.section-action__card:hover::before {
    background: rgba(0, 0, 0, 0.3); 
}

.section-action__card:active::before {
    background: rgba(0, 0, 0, 0.6); 
}

.section-action__card:focus-visible::before {
    background: rgba(0, 0, 0, 0); 
}

.section-action__card-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    object-fit: cover;
}

.section-action__card-content {
    position: relative;
    z-index: 12;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
}

.section-pd {
    padding-top: 50px;
    padding-bottom: 50px;
}

.section-action__label {
    margin-bottom: 27px;
}

.section-action__card-heading {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 30px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.section-action__date {
    font-size: 24px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
}

.section-action__card-link {
    width: 100%;
    max-width: 246px;
}

.section-action__link-text {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 71px;
    padding: 20px 45px 20px 35px;
    border-radius: 40px;
    background-color: var(--main-white);
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
    background-image: url(../img/order-icon.svg);
    background-position: right 10px center;
    background-repeat: no-repeat;
    transition: background-color 0.2s ease-in-out;
}

.section-action__link-text:hover {
    background-color: var(--secondary-light-yellow);
}

.section-action__link-text:active {
    background-color: var(--main-dark-yellow);
}

.section-action__link-text:focus-visible {
    background-color: var(--main-white);
}

.section-tours {
    position: relative;
}

.section-tours__heading {
    margin-bottom: 16px;
}

.section-tours__slider {
    margin-bottom: 40px;
}

.heading-descr {
    width: 55%;
    margin-top: 0;
    margin-bottom: 70px;
    color: var(--main-white);
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-excursions {
    position: relative;
}

.section-excursions__slider {
    margin-bottom: 40px;
}

.section-excursions__heading {
    line-height: 1.5;
}

.section-excursions__descr {
    margin-bottom: 70px;
}

.section-excursions__btn-all {
    margin-left: 0;
}

.section-hotels {
    position: relative;
}

.section-hotels__card-link {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.section-hotels__card-link::before {
    content: ""; 
    position: absolute;
    inset: 0; 
    background: rgba(0, 0, 0, 0); 
    transition: background 0.3s ease; 
    z-index: 1; 
    border-radius: 20px; 
}

.section-hotels__card-link:hover::before {
    background: rgba(0, 0, 0, 0.3); 
}

.section-hotels__card-link:active::before {
    background: rgba(0, 0, 0, 0.5); 
}

.section-hotels__card-link:focus-visible::before {
    background: rgba(0, 0, 0, 0); 
}

.section-hotels__card-img {
    margin-bottom: 14px;
    border-radius: 20px;
}

.section-hotels__card-name {
    margin-top: 0;
    margin-bottom: 5px;
    color: var(--main-white);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 300;
}

.section-hotels__card-location {
    color: var(--main-white);
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
    opacity: 0.6;
}

.section-hotels__slider {
    margin-bottom: 40px;
}

.section-mail__block {
    position: relative;
    display: flex;
    padding: 50px;
    background-color: var(--main-dark-yellow);
    border-radius: 20px;
    color: var(--main-black);
}

.section-mail__form-img {
    position: absolute;
    z-index: 3;
    right: 0px; 
    bottom: 0;
    top: -26px;
    width: 59%;  
}

.section-mail__content {
    position: relative;
    z-index: 5;
    width: 63%;
    display: flex;
    flex-direction: column;
}

.section-mail__heading {
    margin-top: 0;
    margin-bottom: 14px;
    color: var(--main-black);
    font-size: 36px;
    line-height: 1.5;
    font-weight: 300;
}

.section-mail__descr {
    width: 84%;
    margin-top: 0;
    margin-bottom: 98px;
    color: var(--main-black);
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-mail__form {
    position: relative;
    width: 100%;
    max-width: 600px;
    height: 70px;
    margin-bottom: 22px;
    
}

.section-mail__input {
    width: 100%;
    height: 100%;
    padding: 23px 20px;
    outline: none;
    border: 1px solid transparent;
    border-radius: 24px;
    font-size: 22px;
    line-height: 1;
    font-weight: 300;
}

.section-mail__input::placeholder {
    color: #9499A3;
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
}

.section-mail__form-btn {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 60px;
    height: 70px;
    background-image: url(../img/right2.svg);
    background-position: center;
    background-repeat: no-repeat;
}

.section-mail__link-text {
    width: 80%;
    color: var(--main-black);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
}

.section-mail__link {
    color: var(--main-black);
    text-decoration: underline;
}

.section-blog {
    position: relative;
    padding-bottom: 128px;
}

.section-blog__heading {
    margin-bottom: 70px;
}

.section-blog__slider {
    margin-bottom: 40px;
}

.section-blog__card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

.section-blog__card::before {
    content: ""; 
    position: absolute;
    inset: 0; 
    background: rgba(0, 0, 0, 0); 
    transition: background 0.3s ease; 
    z-index: 1; 
    border-radius: 20px; 
}

.section-blog__card:hover::before {
    background: rgba(0, 0, 0, 0.3); 
}

.section-blog__card:active::before {
    background: rgba(0, 0, 0, 0.5); 
}

.section-blog__card:focus-visible::before {
    background: rgba(0, 0, 0, 0); 
}

.section-blog__card-img {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.section-blog__card-content {
    padding: 20px;
    background-color: #272727;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.section-blog__card-title {
    margin-top: 0;
    margin-bottom: 18px;
    color: var(--main-dark-yellow);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 300;
}

.section-blog__card-descr {
    color: var(--main-white);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
}

.section-types__pluses-text a {
    color: inherit;
}

.section-hot {
    position: relative;
}

.section-hot__slide {
    position: relative;
    min-height: 402px;
    border-radius: 40px;
    padding: 50px;
}

.section-hot__img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border-radius: 40px;
    width: 100%;
    height: 100%;
}

.section-hot__heading {
    position: relative;
    width: 53%;
    margin-top: 0;
    margin-bottom: 58px;
    color: var(--main-black);
    font-size: 48px;
    line-height: 1.5;
    font-weight: 300;
}

.color-order {
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 65px 10px 23px;
    width: max-content;
    height: 45px;
    border-radius: 24px;
    background-color: var(--main-dark-yellow);
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
    background-image: url(../img/Arrow_right_light.svg);
    background-position: right ;
    background-repeat: no-repeat;
    transition: background-color 0.2s ease-in-out;
}

.color-order:hover {
    background-color: var(--secondary-light-yellow);
}

.color-order:active {
    background-color: var(--other-bland-yellow);
}

.color-order:focus-visible {
    background-color: var(--main-dark-yellow);
}

.section-application__form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.section-application__input-wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.section-application__input {
    background-color: transparent;
    outline: none;
    border: none;
    border-bottom: 1px solid var(--main-white);
    width: 49%;
    padding-top: 14px;
    padding-bottom: 14px;
    margin-bottom: 40px;
    color: var(--main-white);
    font-size: 24px;
    line-height: 1;
    font-weight: 300;
}

.section-application__input-comm {
    width: 100%;
}

.section-application__input::placeholder {
    color: var(--main-white);
    font-size: 24px;
    line-height: 1;
    font-weight: 300;
}

.section-application__btn-wrap {
    display: flex;
    flex-direction: column;
    align-items: end;
    margin-left: auto;
}

.section-application__color-order {
    margin-bottom: 10px;
}

.section-application__link {
    text-decoration: underline;
    color: var(--main-white);
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
}

.footer {
    padding-top: 50px;
    padding-bottom: 150px;
}

.footer__container {
    display: flex;
    flex-direction: column;
    background-color: var(--main-dark-yellow);
    border-radius: 62px;
    padding: 50px;
    color: var(--main-black);
}

.footer__text {
    display: flex;
    margin-bottom: 21px;
    font-size: 20px;
    line-height: 1;
    font-weight: 300;
}

.footer__link-btn {
    display: flex;
    align-items: center;
    margin-bottom: 36px;
    padding: 20px 110px 20px 40px;
    height: 106px;
    width: max-content;
    border-radius: 53px;
    background-color: var(--main-white);
    font-family: var(--second-family);
    color: var(--main-black);
    font-size: 64px;
    line-height: 1;
    font-weight: 300;
    background-image: url(../img/Vector_633.svg);
    background-position: right 40px center;
    background-repeat: no-repeat;
    transition: background-color 0.2s ease-in-out;
}

.footer__link-btn:hover {
    background-color: var(--others-gray);
}

.footer__link-btn:active {
    background-color: var(--secondary-dark-gray);
}

.footer__link-btn:focus-visible {
    background-color: var(--main-white);
}

.footer__nav {
    display: flex;
    margin-bottom: 41px;
}

.footer__nav-list {
    display: flex;
    align-items: start;
    flex-wrap: wrap;
    margin-right: 53px;
    width: 22%;
}

.footer__right-list {
    display: flex;
    align-items: start;
    flex-wrap: wrap;
    width: 52%;
}

.footer__phone-list {
    margin-right: 73px;
    width: 26%;
}

.footer__item {
    height: max-content;
    margin-bottom: 8px;
    margin-right: 10px;
}

.footer__item-top {
    display: block;
    width: 100%;
}

.footer__link {
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
    transition: color 0.2s ease-in-out;
}

.footer__link:hover {
    color: var(--others-bg-tone);
}

.footer__link:active {
    color: var(--secondary-dark-gray);
}

.footer__link-top {
    color: var(--main-black);
    font-size: 24px;
    line-height: 1;
    font-weight: 300;
}

.footer__bottom-list {
    display: flex;
    justify-content: space-between;
    width: 66.5%;
    
}

.footer__bottom-text {
    margin-right: 16px;
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
}

/* Фон модального окна */
.modal-overlay {
    display: none; /* По умолчанию скрыто */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 1000;
    justify-content: center;
    align-items: center;
    overflow-y: scroll;
}

/* Модальное окно */
.modal {
    position: absolute;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 205px;
    left: 43px;
    right: 70px;
    max-width: 1273px;
    margin: 0 auto;
    padding: 0;
    border-radius: 30px;
    background-color: var(--others-dark);
}

.close-btn {
    position: absolute;
    top: -30px;
    right: -46px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background-image: url(../img/Exit.svg);
    background-position: center;
    background-repeat: no-repeat;
}

.modal-content {
    display: flex;
    flex-direction: column;
    padding: 50px;
}

.modal-heading {
    margin-top: 0;
    margin-bottom: 16px;
    font-size: 40px;
    font-weight: 300;
    line-height: 1;
    color: var(--main-white);
}

.modal-descr {
    width: 50%;
    margin-top: 0;
    margin-bottom: 50px;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--main-white);
}

.modal-filters {
    display: flex;
    width: 100%;
    margin-bottom: 50px;
    color: var(--main-white);
}

.modal-label {
    color: var(--main-white);
}

.breadcrumb {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
    margin-bottom: 30px;
}

.breadcrumb li a {
    position: relative;
    text-decoration: none;
    display: flex;
    align-items: center;
    padding-right: 18px;
    color: var(--main-white);
    opacity: 0.8;
    font-size: 16px;
    line-height: 1;
    font-weight: 200;
    transition: color 0.2s ease-in-out;
}

.breadcrumb li a::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 18px;
    height: 18px;
    background-image: url(../img/arrow_left2.svg);
    background-position: center;
    background-repeat: no-repeat;
}

.breadcrumb li a:hover {
    color: var(--button-color);
}

.breadcrumb li:last-child {
    color: var(--main-white);
    opacity: 0.8;
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
}

.breadcrumb li:last-child a {
    pointer-events: none;
    text-decoration: none;
}

.tour-label {
    color: var(--main-white);
}

.section-tours {
    padding-top: 10px;
    padding-bottom: 50px;
}

.section-tours__search-form {
    margin-bottom: 30px;
}

.section-tours__container {
    padding: 316px 50px 50px;
    background-image: url(../img/tours1.jpg);
    background-size: cover;
    font-family: var(--font-family);
    border-radius: 24px;
}

.section-tours__content {
    width: 65%;
}

.section-card-tours__content {
    display: flex;
    justify-content: space-between;
}

.select-tour {
    padding: 20px 40px 20px 20px;
    flex-wrap: nowrap;
    width: max-content;
    font-size: 24px;
    background-color: transparent;
    color: var(--main-dark-yellow);
    background-image: url(../img/Arrow_right_ye2.svg);
    background-repeat: no-repeat;
    background-position: right center;
}

.tours-options {
    top: 60px;
    background-color: transparent;
    
}

.tours-option {
    padding-left: 10px;
    color: var(--main-dark-yellow);
    font-size: 20px;
}

.tours-select {
    width: 100%;
}

.section-card-tours__list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px; 
    max-width: 100%;
}

.section-card-tours__wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: start;
    width: 90%;
    height: max-content;
    margin-bottom: 36px;
}

.section-card-tours__item {
    width: max-content;
    margin-right: 12px;
    margin-bottom: 24px;
    display: flex;
}

.section-card-tours__btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 45px;
    border-radius: 45px;
    border: 1px solid rgba(242, 242, 242, 0.4);
    color: var(--main-white);
    font-size: 20px;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: right 20px center;
    cursor: pointer;
    transition: border-color .2s ease-in-out, color .2s ease-in-out;
}

.section-card-tours__btn:hover {
    border-color: var(--secondary-light-yellow);
    color: var(--secondary-light-yellow);
}

.section-card-tours__btn.active {
    color: var(--main-black);
    background-color: var(--main-dark-yellow);
    background-image: url(../img/Dell_duotone_line.svg);
    background-position: left 10px center;
}

.icon-hot {
    background-image: url(../img/icon_hot.svg);
}

.icon-star {
    background-image: url(../img/stars_empty.svg);
}

.section-card-tours__card-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 26px;
    margin-bottom: 40px;
}

.section-action__card.hidden {
    display: none;
}

.section-hotels__card.hidden {
    display: none;
}

.show-more-btn {
    display: flex;
    align-items: center;
    margin: 0 auto;
    padding: 19px 62px 19px 0;
    color: var(--main-dark-yellow);
    background-image: url(../img/Arrow_down.svg);
    background-repeat: no-repeat;
    background-position: right;
    font-size: 32px;
}

.section-shopping__container {
    background-image: url(../img/shop-bann.jpg);
}

.section-wedding__container {
    background-image: url(../img/wed.jpg);
}

.section-hotel__container {
    padding: 316px 50px 50px;
    background-image: url(../img/hotel-bann.jpg);
    background-size: cover;
    font-family: var(--font-family);
    border-radius: 24px;
}

.hotel-descr {
    width: 100%;
}

.section-transfer__container {
    background-image: url(../img/transfer-bann.jpg);
}

.section-translator__container {
    background-image: url(../img/transl-bann.jpg);
}

.section-search {
    position: relative;
}

.section-services__link {
    display: flex;
    justify-content: space-between;
}

.section-services__link-price {
    display: flex;
    flex-direction: column;
    align-items: end;
    padding-right: 104px;
}

.section-services__main-price {
    margin-bottom: 8px;
}

.section-services__add-price {
    font-size: 20px;
    opacity: 0.6;
}

.section-places__container {
    background-image: url(../img/place-bann.jpg);
}

.section-card-tours__descr {
    width: 100%;
}

.section-descr {
    padding-top: 50px;
}

.section-descr__img {
    width: 100%;
    max-height: 410px;
    border-radius: 24px;
}

.section-place__btn-left, .section-place__btn-right {
    top: 50%;
}

.section-descr__content {
    display: flex;
    margin-bottom: 50px;
}

.section-descr__left {
    margin-right: 30px;
}

.section-descr__date {
    display: flex;
    margin-bottom: 30px;
    font-size: 20px;
    line-height: 1;
    color: var(--main-white);
    opacity: 0.7;
}

.wrap-filters {
    display: flex;
    align-items: center;
    margin-bottom: 60px;
}

.hotel-select {
    width: max-content;
    margin-right: 12px;
}

.hotel-select-trigger {
    padding: 13px 50px 13px 22px;
    flex-wrap: nowrap;
    width: max-content;
    border-radius: 45px;
    font-size: 20px;
    background-color: rgba(242, 242, 242, 0.2);
    border: 2px solid transparent;
    color: var(--main-white);
    background-image: url(../img/arrow_left_sm.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
    transition: background-color 0.2s ease-in-out;
}

.hotel-select-trigger::after {
    position: absolute;
    content: "";
    background-image: none; 
}

.hotel-select-trigger:hover {
    background-color: rgba(255, 217, 85, 0.4);
}

.hotel-select-trigger:active {
    background-color: rgba(255, 217, 85, 0.6);
}

.hotel-options {
    background-color: var(--others-bg-2);
}

.hotel-option {
    color: var(--main-white);
    font-size: 18px;
}

.hotel-option:hover {
    color: var(--main-dark-yellow);
}

.hotel-select-trigger.active {
    border: 2px solid var(--main-white);
}

.city-trigger {
    position: relative;
    background-color: var(--main-dark-yellow);
    color: var(--main-black);
    padding-left: 40px;
    background-image: url(../img/arr_down_sm.svg);
}

.city-trigger::after {
    position: absolute;
    content: "";
    top: 12px;
    left: 15px;
    width: 20px;
    height: 20px;
    background-image: url(../img/Pin_fill.svg);
    background-position: center;
}

.city-trigger:hover {
    background-color: var(--secondary-light-yellow);
}

.city-trigger:active {
    background-color: #F8DA70;
}

.hotel-select__title {
    padding-right: 30px;
    background-image: url(../img/star_white.svg);
    background-position: right center;
    background-repeat: no-repeat;
}

.section-details__content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 55px;
}

.section-details__heading {
    
    font-size: 40px;
    line-height: 1.5;
    font-weight: 300;
    margin-top: 0;
    margin-bottom: 12px;
}

.section-details__city {
    display: flex;
    font-size: 24px;
    line-height: 1;
    font-weight: 300;
    opacity: 0.8;
    margin-bottom: 12px;
}

.btn-wrap {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}

.section-details__rating {
    margin-right: 16px;
    margin-bottom: 0;
}

.section-details__link {
    display: flex;
    align-items: center;
    padding: 10px 5px 10px 40px;
    font-size: 24px;
    line-height: 1;
    font-weight: 300;
    text-decoration: underline;
    color: var(--main-white);
    background-image: url(../img/share.svg);
    background-position: left center;
    background-repeat: no-repeat;
}

.section-details__rigth {
    display: flex;
    flex-wrap: wrap;
    justify-content: end;
}

.price-wrap {
    display: flex;
    flex-direction: column;
    margin-right: 40px;
}

.section-details__price {
    margin-bottom: 6px;
    font-size: 36px;
    line-height: 1;
    font-weight: 300;
    white-space: nowrap;
}

.section-details__price-color {
    color: var(--main-dark-yellow);
}

.section-details__subtitle {
    padding-top: 8px;
    padding-bottom: 8px;
    display: flex;
    padding-right: 26px;
    opacity: 0.6;
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
}

.section-details__subtitle-info {
    background-image: url(../img/info_light.svg);
    background-position: right top;
    background-repeat: no-repeat;
}

.section-details__btn {
    height: 45px;
}

.section-details__img-wrap {
    display: flex;
    margin-bottom: 40px;
}

.section-details__img-right {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
    overflow: hidden;
}

.lightbox {
    top: 80vh !important;
}

.lightbox .lb-image {
    width: 500px !important;
    height: 500px !important;
}

.lb-prev {
    opacity: 1 !important;
    width: 60px !important;
    background: url('../img/right.svg') no-repeat center !important;
    transform: scale(-1);
    background-size: contain;
}
  
.lb-next {
    opacity: 1 !important;
    width: 60px !important;
    background: url('../img/right.svg') no-repeat center !important;
    background-size: contain;
}
  
.lb-close {
    position: absolute;
    top: -40px;
    right: calc(50% - 300px);
    width: 60px;
    height: 60px;
    background: url('../img/Exit.svg') no-repeat center !important;
    background-size: contain;
}

.lb-data .lb-number {
    display: none !important;
}

.section-details__img-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    pointer-events: none;
}

.section-details__img-left {
    position: relative;
    margin-right: 16px;
}

.section-details__img-main {
    border-radius: 20px;
}

.section-details__wrap-label {
    position: absolute;
    top: 24px;
    left: 24px;
}

.section-details__prev-img {
    border-radius: 8px;
}

.section-details__content {
    display: flex;
    justify-content: space-between;
}

.section-details__left {
    display: flex;
    flex-direction: column;
    width: calc(50% - 100px);
    margin-right: 100px;
}

.section-details__right {
    width: 45%;
}

.section-details__descr {
    opacity: 0.7;
    margin-bottom: 16px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-details__descr-last {
    margin-bottom: 40px;
}

.section-details__heading-sm {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-details__text {
    color: var(--main-white);
    opacity: 0.7;
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
}

.section-details__right-text {
    margin-bottom: 8px;
    padding: 11px 0 11px 38px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
    opacity: 0.8;
    background-position: left center;
    background-repeat: no-repeat;
}

.section-details__text-last {
    margin-bottom: 30px;
}

.card-icon {
    background-image: url(../img/card-icon.svg);
}

.auto-icon {
    background-image: url(../img/auto-icon.svg);
}

.bed-icon {
    background-image: url(../img/bed-icon.svg);
}

.disney-icon {
    background-image: url(../img/d-icon.svg);
}

.people-icon {
    background-image: url(../img/people-icon.svg);
}

.sail-icon {
    background-image: url(../img/sail-icon.svg);
}

.bar-icon {
    background-image: url(../img/bar-icon.svg);
}

.salon-icon {
    background-image: url(../img/salon-icon.svg);
}

.tour__search-form {
    width: 100%;
}

.tour-order-btn {
    width: 100%;
    max-width: 386px;
    border-radius: 12px;
    margin-bottom: 16px;
}

.section-timetable {
    position: relative;
}

.section-timetable__slide {
    display: flex;
    flex-direction: column;
    padding: 26px;
    border-radius: 16px;
    color: var(--main-white);
    background-color: transparent;
}

.section-timetable__slide.swiper-slide-active {
    color: var(--main-black);
    background-color: var(--main-white);
}

.section-timetable__slide-heading {
    margin-top: 0;
    margin-bottom: 24px;
    font-size: 36px;
    line-height: 1;
    font-weight: 300;
}

.section-timetable__slide-text {
    position: relative;
    margin-top: 0;
    margin-bottom: 8px;
    padding-left: 26px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 300;
}

.section-timetable__slide-text::after {
    position: absolute;
    content: "";
    top: 10px;
    left: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--main-white);
}

.section-timetable__slide.swiper-slide-active .section-timetable__slide-text::after {
    background-color: var(--main-black);
}

.accordion__control {
	display: flex;
    flex-direction: column;
	align-items: space-between;
	justify-content: center;
    width: 100%;
	background-color: #303030;
    margin-bottom: 24px;
	padding: 26px 34px;
    border-radius: 40px;
    cursor: pointer;
}

.accordion__control::-webkit-details-marker {
	display: none;
}

.accordion__wrap-title {
    display: flex;
    justify-content: space-between;
}

.accordion__title {
    color: var(--main-white);
	margin: 0;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 400;
    transition: color .2s ease-in-out;
}

.accordion__icon {
	display: inline-block;
	width: 30px;
	height: 30px;
    background-image: url(../img/plus1.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
}

.accordion__content {
    display: none;
    margin: 0;
    padding-top: 13px;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
    color: var(--main-white);
    opacity: 0.4;
}

.open .accordion__content {
	display: block;
} 

.open .accordion__control {
    border-radius: 12px;
}

.open .accordion__icon {
	background-image: url(../img/minus1.svg);
}

.section-review__content {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin-bottom: 30px;
}

.section-review__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 43px;
    height: 61px;
    border-radius: 40px;
    background-color: var(--main-white);
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
}

.modal-foto-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 40px;
    padding: 10px 31px;
    height: 45px;
    width: max-content;
    border-radius: 24px;
    background-color: var(--main-white);
    color: var(--main-black);
    font-size: 18px;
    line-height: 1;
    font-weight: 300;
}

.review-form {
    flex-direction: column;
}

.modal__input-wrap {
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
}

.review-title {
    font-size: 24px;
    line-height: 1;
    margin-bottom: 20px;
}

.modal__rating {
    display: flex;
    align-items: center;
    margin-bottom: 50px;
}

.star-review {
    width: 38px;
    height: 38px;
    background-size: cover;
    margin-right: 8px;
}

.section-review__rating-wrap {
    display: flex;
    align-items: center;
}

.rating-count {
    display: flex;
    margin-right: 17px;
    font-size: 36px;
    line-height: 1;
    font-weight: 300;
}

.review-rating {
    margin-bottom: 0;
}

.section-review__descr.hidden {
    display: none;
}

.section-review__left {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-right: 45px;
}

.section-review__left-foto {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
    flex-shrink: 0;
}

.section-review__left-name {
    display: flex;
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
}

.section-review__right-title {
    display: flex;
    margin-bottom: 14px;
    font-size: 20px;
    line-height: 1;
    font-weight: 300;
}

.section-review__descr {
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
    opacity: 0.6;
}

.section-review__btn-more {
    display: flex;
    margin-bottom: 16px;
    color: var(--main-white);
    text-decoration: underline;
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
}

.section-review__wrap-img {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.section-review__img {
    margin-right: 10px;
    border-radius: 12px;
    margin-bottom: 10px;
}

.section-review__content.hidden {
    display: none;
}

.section-details__review-btn {
    padding-left: 26px;
    color: var(--main-white);
    font-size: 16px;
    line-height: 1;
    font-weight: 300;
    background-position: left center;
    background-image: url(../img/pensil.svg);
    background-repeat: no-repeat;
    width: max-content;
    transition: color 0.2s ease-in-out;
}

.section-details__review-btn:hover {
    color: var(--secondary-light-yellow);
}

.section-details__review-btn:active {
    color: var(--main-dark-yellow);
}

.section-details__heading-exc {
    width: 55%;
}

.section-types-hotel__card {
    padding: 24px;
    border-radius: 20px;
    background-color: #303030;
    margin-bottom: 40px;
}

.section-types-hotel__card-content {
    display: flex;
    justify-content: space-between;
}

.section-types-hotel__left {
    display: flex;
}

.section-types-hotel__img {
    max-width: 322px;
    height: 176px;
    border-radius: 20px;
    margin-right: 32px;
}

.section-types-hotel__name {
    margin-top: 0;
    margin-bottom: 16px;
    font-size: 32px;
    font-weight: 300;
}

.section-types-hotel__wrap-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 16px;
}

.section-types-hotel__filter {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 14px;
    margin-bottom: 10px;
    padding: 2px 22px;
    min-width: 65px;
    height: 29px;
    background-color: var(--main-white);
    border-radius: 30px;
    color: var(--main-black);
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
}

.section-types-hotel__filter:hover {
    background-color: var(--secondary-light-yellow);
}

.section-types-hotel__filter.active {
    color: var(--main-black);
    background-color: var(--main-dark-yellow);
}

.sunny {
    background-image: url(../img/sunny.svg);
}

.wifi {
    background-image: url(../img/wi-fi.svg);
}

.cond {
    background-image: url(../img/cond.svg);
}

.section-types-hotel__right {
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: end;
}

.section-types-hotel__old-price {
    text-decoration: line-through;
    color: var(--main-white);  
    font-size: 24px;
    line-height: 1.5;
    opacity: 0.4;
}

.section-types-hotel__price {
    display: flex;
    margin-bottom: 24px;
    color: var(--main-dark-yellow);
    font-size: 32px;
    line-height: 1.5;
}

.section-types-hotel__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 34px;
    height: 45px;
    border-radius: 24px;
    font-size: 18px;
    line-height: 1.5;
    background-color: var(--main-white);
    color: var(--main-black);
    white-space: nowrap;
}

.section-map__map {
    position: relative;
    border-radius: 20px;
    background-color: #303030;
    width: 100%;
    height: 420px;
}

.section-map__label {
    position: absolute;
    top: 27px;
    left: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px 45px;
    border-radius: 30px;
    background-color: #989b9f;
    color: var(--main-white);
    font-size: 20px;
    line-height: 1.5;
}

.icon-pin {
    padding-left: 28px;
    background-image: url(../img/Pin_light.svg);
    background-position: left center;
    background-repeat: no-repeat;
}

.contact-btn {
    width: 100%;
}

.section-details__place-heading {
    width: 59%;
}

.mb0 {
    margin-bottom: 0;
}

.input-container {
    margin-bottom: 16px;
}

.name-rating {
    display: none;
}

.section-details__center {
    display: none;
}

.section-types-hotel__name-mob {
    display: none;
}

.section-types-hotel__btn-more {
    display: none;
}

.section-expedition__slider {
    margin-bottom: 40px;
}

.section-order__list {
    display: flex;
    align-items: center;
    margin-bottom: 50px;
}

.section-order__link {
    display: flex;
    align-items: center;
    padding-left: 10px;
    padding-right: 50px;
    color: var(--main-white);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 300;
    background-image: url(../img/Arrow_nav.svg);
    background-position: right center;
    background-repeat: no-repeat;
}

.section-order__link.active {
    color: var(--main-dark-yellow);
}

.section-order__link.passive {
    opacity: 0.4;
}

.section-order__content {
    display: flex;
}

.section-order__left {
    width: 55%;
    margin-right: 24px;
    padding: 20px;
}

.section-order__img {
    width: 171px;
    height: 116px;
    margin-right: 17px;
}

.section-order__right {
    display: flex;
    flex-direction: column;
    padding-top: 16px;
    padding-bottom: 16px;
}

.section-order__right-wrap {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    margin-right: 12px;
}

.section-order__from, .section-order__to {
    display: flex;
    flex-direction: column;
}

.section-order__from {
    margin-right: 46px;
}

.section-order__text {
    display: block;
    color: var(--main-white);
    opacity: 0.4;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-order__count {
    display: block;
    color: var(--main-white);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 300;
}

.section-order__right-fl {
    display: flex;
    align-items: center;
}

.section-order__right-link {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-dark-yellow);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
}

.section-order__title {
    margin-top: 0;
    margin-bottom: 19px;
    color: var(--main-white);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 300;
}

.section-application__price-wrap {
    display: flex;
    margin-bottom: 40px;
}

.section-application__price {
    color: var(--main-white);
    font-size: 36px;
    line-height: 1.5;
    font-weight: 300;
}

.section-application__price-text {
    margin-right: 20px;
}

.section-order__last-link {
    background-image: none;
}

.section-order__descr {
    margin-top: 0;
    margin-bottom: 267px;
    color: var(--main-white);
    opacity: 0.8;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
}

.section-details__link {
    color: var(--main-white);
    transition: color .2s ease-in-out;
}

.section-details__link:hover {
    color: var(--secondary-light-yellow);
}

.section-details__link:active {
    color: var(--main-dark-yellow);
}

@media screen and (max-width: 1200px) {
    .container {
        padding-left: 40px;
        padding-right: 40px;
    }
    .header__container {
        padding-top: 30px;
        padding-bottom: 20px;
        justify-content: center;
    }
    .header__nav {
        flex-wrap: wrap;
        justify-content: center;
    }
    .header__logo {
        margin-bottom: 20px;
    }
    .header__nav-list {
        margin-right: 0;
        margin-bottom: 20px;
    }
    .section-main__container {
        padding: 30px;
        border-radius: 30px;
    }
    .section-main__search-form {
        flex-wrap: wrap;
    }
    .section-main__search-container,
    .section-main__date-container,
    .custom-select {
        width: 31%;
    }
    .tours-select, .tours-options {
        width: 100%;
    }
    .section-main__filters {
        margin-bottom: 80px;
    }
    .section-main__descr {
        width: 100%;
    }
    .menu-list {
        right: 40px;
        left: 40px;
    }
    .menu-list.show {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
    .section-main__heading {
        font-size: 44px;
    }
    .heading-h2 {
        font-size: 38px;
    }
    .heading-h3 {
        margin-bottom: 20px;
        font-size: 34px;
    }
    .section-change {
        padding-top: 70px;
        padding-bottom: 40px;
    }
    .section-change__nav-item {
        margin-bottom: 10px;
    }
    .section-change__nav-link {
        font-size: 32px;
    }
    .section-change__descr {
        width: 70%;
        font-size: 18px;
    }
    .btn-all {
        padding-right: 40px;
        background-size: 40px;
        font-size: 24px;
    }
    .section-types__slider {
        margin-bottom: 50px;
    }
    .section-types__card-name {
        font-size: 26px;
    }
    .section-types__pluses-link {
        background-size: 60px;
        background-position: right 0 bottom 0;
    }
    .section-types__pluses-title {
        font-size: 32px;
    }
    .section-types__item-btn {
        width: 30%;
    }
    .section-types__link-title {
        font-size: 32px;
        line-height: 1.2;
    }
    .section-special__card {
        min-height: 500px;
    }
    .section-special__btn-all {
        margin-bottom: 0;
    }
    .section-pd {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .section-services__heading {
        margin-bottom: 30px;
    }
    .section-services__link {
        background-position: right center;
        padding: 25px;
        font-size: 28px;
    }
    .section-mail__descr {
        margin-bottom: 60px;
    }
    .section-blog__heading {
        margin-bottom: 30px;
    }
    .section-blog__card-img {
        height: 50%;
    }
    .section-blog__card-content {
        padding: 16px;
    }
    .section-blog__card-title {
        font-size: 22px;
    }
    .section-hot__heading {
        width: 80%;
        margin-bottom: 30px;
        font-size: 26px;
    }
    .section-hot__slide {
        padding: 30px;
        min-height: 202px;
    }
    .section-about__descr {
        font-size: 18px;
    }
    .heading-descr {
        font-size: 18px;
        margin-bottom: 30px;
    }
    .section-action__card {
        min-height: 470px;
        padding: 20px;
    }
    .star {
        width: 20px;
        height: 20px;
        margin-right: 4px;
        background-size: 90%;
    }
    .section-action__link-text {
        height: 50px;
        padding: 14px 40px 14px 28px;
    }
    .card-label {
        height: 44px;
        padding: 10px 24px;
    }
    .section-mail__form-img {
        display: none;
    }
    .section-application__input {
        padding-top: 10px;
        padding-bottom: 10px;
        margin-bottom: 30px;
        font-size: 20px;
    }
    .section-application__input::placeholder {
        font-size: 20px;
    }
    .footer {
        padding-top: 30px;
        padding-bottom: 50px;
    }
    .footer__container {
        padding: 30px;
        border-radius: 30px;
    }
    .footer__link-btn {
        background-position: right 14px center;
        font-size: 36px;
        padding: 14px 80px 14px 26px;
    }
    .footer__bottom-list {
        width: 100%;
    }
    .modal {
        top: 102px;
        left: 20px;
    }
    .modal-content {
        padding: 30px;
    }
    .modal-heading {
        font-size: 32px;
    }
    .modal-descr {
        width: 70%;
        font-size: 18px;
    }
    .close-btn {
        right: -28px;
    }
    .custom-select-trigger::after {
        right: 10px;
    }
    .section-card-tours__card-wrap {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .hotel-select {
        width: max-content;
    }
    .section-details__heading {
        width: 78%;
        font-size: 32px;
    }
    .section-details__price {
        font-size: 30px;
    }
    .section-details__link {
        font-size: 18px;
    }
    .section-details__left {
        margin-right: 30px;
        width: calc(50% - 30px);
    }
    .section-details__rigth {
        flex-wrap: wrap;
    }
    .price-wrap {
        margin-right: 22px;
        align-items: end;
    }
    .section-details__descr {
        margin-bottom: 12px;
        font-size: 18px;
    }
    .section-details__right-text {
        padding-top: 6px;
        padding-bottom: 6px;
    }
    .section-details__right-text {
        font-size: 18px;
    }
    .section-timetable__slide {
        padding: 20px;
    }
    .section-timetable__slide-text {
        font-size: 16px;
    }
    .show-more-btn {
        padding: 12px 40px 12px 0;
        background-size: 40px;
        font-size: 22px;
    }
    .section-types-hotel__card-content {
        flex-wrap: wrap;
    }
    .section-types-hotel__right {
        align-items: center;
    }
    .section-types-hotel__name {
        font-size: 24px;
    }
    .section-types-hotel__img {
        height: 80%;
        object-fit: cover;
    }
    .section-types-hotel__price {
        font-size: 24px;
        margin-bottom: 16px;
    }
    .section-types-hotel__old-price {
        font-size: 20px;
    }
    .section-expedition__slider {
        margin-bottom: 20px;
    }
    .section-order__content {
        flex-direction: column;
    }
    .section-order__left {
        width: 100%;
        margin-right: 0;
    }
    .section-application__price-wrap {
        margin-bottom: 20px;
    }
    .section-application__price {
        font-size: 30px;
    }
    .section-order__descr {
        margin-bottom: 150px;
        font-size: 18px;
    }
}


@media screen and (max-width: 768px) {
    .container {
        padding-left: 20px;
        padding-right: 20px;
    }
    .menu-toggle {
        display: none;
    }
    .header__nav-list {
        display: none;
    }
    .header__container {
        justify-content: space-between;
    }
    .header__logo {
        width: 85px;
        height: 25px;
        margin-bottom: 0;
    }
    .header__btn-more {
        height: 30px;
        margin-right: 17px;
        padding: 8px 16px;
        border-radius: 15px;
        font-size: 12px;
    }
    .breadcrumb {
        margin-bottom: 24px;
    }
    .mobile-menu {
        display: flex;
    }
    .mobile-menu-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        background: none;
        border: none;
        cursor: pointer;
    }
    .overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.7);
        z-index: 90;
    }
    .mobile-menu-container {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: black;
        color: white;
        display: flex;
        flex-direction: column;
        transform: translateX(-100%);
        transition: transform 0.3s ease-in-out;
        z-index: 99;
    }
    .mobile-menu-container.active {
        transform: translateX(0);
    }
    .mobile-menu-screen {
        position: relative;
        display: none;
        padding: 37px 24px;
    }
    .mobile-menu-screen.active {
        display: block;
    }
    .mobile-close-menu {
        position: absolute;
        top: 40px;
        right: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 26px;
        height: 26px;
        background: none;
        border: none;
        cursor: pointer;
    }
    .mobile-menu-heading {
        margin-top: 0;
        margin-bottom: 30px;
        font-size: 24px;
        line-height: 1;
        font-weight: 300;
    }
    .mobile-menu-item {
        margin-bottom: 8px;
    }
    .mobile-menu-link {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-left: 25px;
        padding-top: 5px;
        padding-bottom: 5px;
        color: var(--main-white);
        font-size: 16px;
        line-height: 1;
        font-weight: 300;
        background-repeat: no-repeat;
        background-position: left center;
        background-size: 23px;
    }
    .mobile-menu-link::after {
        content: "";
        position: absolute;
        top: 5px;
        right: 5px;
        width: 9px;
        height: 14px;
        background-image: url(../img/Arrow_small.svg);
        background-position: center;
        background-repeat: no-repeat;
    }
    .mobile-menu-item:last-child .mobile-menu-link::after {
        display: none;
    }
    .mobile-contact-list {
        padding-left: 0;
        padding-top: 21px;
        padding-bottom: 26px;
    }
    .mobile-contact-link {
        color: var(--main-white);
        opacity: .6;
    }
    .mobile-btn-order {
        margin: 0 auto;
        width: 100%;
        max-width: 350px;
    }
    .back-button {
        display: flex;
        align-items: center;
        margin-bottom: 36px;
        padding-left: 18px;
        color: var(--main-dark-yellow);
        background-image: url(../img/Arrow_small_yel.svg);
        background-position: left;
        background-repeat: no-repeat;
    }
    .mobile-submenu-item {
        margin-bottom: 8px;
    }
    .mobile-submenu-link {
        color: var(--main-white);
        font-size: 16px;
        line-height: 1.5;
        font-weight: 300;
    }
    .modal {
        left: 20px;
        right: 20px;
        background-color: var(--main-black);
        border-radius: 12px;
    }
    .close-btn {
        right: -15px;
        top: -15px;
    }
    .modal-heading {
        text-align: center;
        margin-bottom: 12px;
        font-size: 24px;
    }
    .modal-descr {
        margin: 0 auto;
        text-align: center;
        margin-bottom: 23px;
        font-size: 16px;
    }
    .section-application__input-wrap {
        flex-direction: column;
    }
    .section-application__input {
        width: 100%;
        margin-bottom: 18px;
        font-size: 14px;
    }
    .section-application__link {
        display: none;
    }
    .modal-order {
        justify-content: center;
        width: 100%;
        max-width: 303px;
        margin: 16px auto 0;
        padding-top: 10px;
        padding-bottom: 10px;
        height: 45px;
        background-color: var(--main-white);
        border-radius: 24px;
        background-position: right 70px center;
    }
    .modal-btn-wrap {
        justify-content: center;
        margin: 0 auto;
        width: 100%;
    }
    .modal-filters {
        flex-direction: column;
        margin-bottom: 0;
    }
    .section-main__search-container, .section-main__date-container, .custom-select, .tourist-select {
        width: 100%;
        margin-right: 0;
        margin-bottom: 18px;
    }
    .modal-label {
        color: var(--main-white);
        opacity: 1;
    }
    .filter, .select-box {
        min-height: 36px;
        padding: 8px;
    }
    .custom-select-trigger::after {
        bottom: 11px;
    }
    .section-main__container {
        background-image: none;
        padding: 0;
    }
    .section-main__filters {
        margin-bottom: 70px;
        padding: 18px;
    }
    .section-main__wrap-tabs {
        margin-bottom: 16px;
    }
    .section-main__search-input {
        padding-left: 28px;
    }
    .section-main__search-btn {
        top: 53%;
        left: 8px;
        width: 16px;
        height: 16px;
        background-size: cover;
    }
    .label {
        color: var(--main-black);
        opacity: .4;
    }
    .section-main__btn-form {
        width: 100%;
        max-width: 300px;
        height: 36px;
        padding-top: 8px;
        padding-bottom: 8px;
        font-size: 14px;
        background-position: right 110px center;
    }
    .section-main__content {
        width: 100%;
        background-image: url(../img/main-bg-mob.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        border-radius: 40px;
        padding: 90px 15px 22px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .section-main__heading {
        order: 1;
        text-align: center;
        font-size: 24px;
        margin-bottom: 12px;
    }
    .section-main__color-heading {
        color: var(--main-white);
    }
    .section-main__descr {
        order: 2;
        text-align: center;
        font-size: 14px;
        margin-bottom: 157px;
    }
    .section-main__btn {
        order: 3;
        width: 100%;
        max-width: 303px;
        background-position: right 60px center;
    }
    .section-change {
        display: flex;
        flex-direction: column;
        padding-top: 60px;
        padding-bottom: 30px;
    }
    .heading-h3 {
        font-size: 24px;
        text-align: center;
        margin-bottom: 12px;
    }
    .section-change__heading {
        margin-bottom: 12px;
    }
    .section-change__descr {
        margin: 0 auto 30px;
        font-size: 16px;
        text-align: center;
    }
    .section-change__nav {
        margin: 0 auto 30px;
    }
    .section-change__nav-list {
        justify-content: center;
    }
    .section-change__nav-link {
        padding-right: 34px;
        padding-left: 4px;
        font-size: 24px;
    }
    .section-change__nav-count {
        font-size: 12px;
        right: 10px; 
    }
    .btn-all {
        padding-right: 24px;
        font-size: 14px;
        margin-left: auto;
        margin-right: auto;
        background-size: 22px;
    }
    .section-types__content {
        flex-direction: column;
        margin-bottom: 24px;
    }
    .section-types__heading {
        width: 100%;
    }
    .section-types__descr {
        width: 80%;
        padding-right: 0;
        margin: 0 auto;
        text-align: center;
        font-size: 16px;
    }
    .section-types__card {
        border-radius: 12px;
        padding: 12px 8px;
        min-height: 178px;
    }
    .card-label {
        height: 33px;
        padding: 8px 12px;
        font-size: 12px;
    }
    .section-types__card-name {
        padding-top: 7px;
        padding-bottom: 7px;
        font-size: 14px;
        background-size: 28px;
    }
    .sw-btn {
        display: none;
    }
    .section-types__pluses-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
    }
    .section-types__pluses-item {
        width: 100%;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .section-types__pluses-title {
        margin-bottom: 17px;
        font-size: 20px;
    }
    .section-types__pluses-text {
        font-size: 12px;
    }
    .section-types__link-title {
        font-size: 20px;
        width: 80%;
    }
    .section-types__pluses-link {
        padding: 8px;
        border-radius: 12px;
    }
    .section-types__link-text {
        font-size: 12px;
    }
    .section-about {
        flex-direction: column;
    }
    .heading-h2 {
        font-size: 24px;
        text-align: center;
    }
    .section-about__heading {
        width: 100%;
        margin: 0 auto 12px;
        text-align: center;
    }
    .section-about__content {
        width: 100%;
        margin: 0 auto;
    }
    .section-about__descr {
        font-size: 14px;
        margin-bottom: 12px;
        text-align: center;
    }
    .section-special__card {
        padding: 13px 8px;
        border-radius: 12px;
        min-height: 205px;
    }
    .section-special__card-heading {
        font-size: 14px;
    }
    .hotel-rating {
        display: none;
    }
    .section-special__card-link {
        justify-content: center;
        height: 33px;
        padding: 8px 20px;
        background-image: none;
    }
    .section-special__link-price {
        display: none;
    }
    .section-special__link-text, .section-action__link-text {
        display: flex;
        padding-right: 30px;
        font-size: 12px;
        background-image: url(../img/Arr_right_light.svg);
        background-position: right center;
        background-repeat: no-repeat;
    }
    .section-banner__content {
        padding: 12px;
    }
    .section-banner__descr {
        text-align: center;
        margin-bottom: 90px;
        font-size: 14px;
    }
    .section-banner__btn {
        width: 100%;
        max-width: 303px;
        margin-left: auto;
        margin-right: auto;
    }
    .section-services__link {
        display: flex;
        justify-content: center;
        padding: 25px;
        background-image: none;
        text-align: center;
        font-size: 20px;
    }
    .section-services__link-price {
        padding-right: 0;
        padding-left: 12px;
    }
    .section-services__item:hover .section-services__link {
        background-size: 40px;
        background-position: right 25px center;
    }
    .section-action__card {
        min-height: 205px;
        padding: 14px 7px;
        border-radius: 12px;
    }
    .section-action__date {
        display: none;
    }
    .section-action__card-heading {
        font-size: 14px;
    }
    .section-action__label {
        margin-bottom: 60px;
    }
    .heading-descr {
        margin: 0 auto 24px;
        font-size: 16px;
        text-align: center;
    }
    .section-action__link-text {
        border-radius: 24px;
        height: 33px;
        padding: 8px 40px 8px 20px;
        font-size: 12px;
        background-image: url(../img/Arrow_right_light2.svg);
        background-position: right 10px center;
    }
    .section-hotels__card-name {
        font-size: 14px;
    }
    .section-hotels__card-location {
        font-size: 12px;
        opacity: 0.4;
    }
    .section-mail__block {
        padding: 24px 27px 12px;
    }
    .section-mail__content {
        width: 100%;
        justify-content: center;
    }
    .section-mail__heading {
        margin-bottom: 12px;
        text-align: center;
        font-size: 20px;
    }
    .section-mail__descr {
        margin-bottom: 30px;
        width: 100%;
        text-align: center;
        font-size: 16px;
    }
    .section-mail__form {
        margin-bottom: 6px;
    }
    .section-mail__input {
        height: 57px;
        padding: 18px;
        border-radius: 13px;
        font-size: 14px;
    }
    .section-mail__form-btn {
        height: 57px;
        background-image: url(../img/right_form.svg);
        background-size: 40px;
    }
    .section-mail__link-text {
        font-size: 10px;
        text-align: center;
        margin: 0 auto;
    }
    .section-blog__card {
        background-color: #272727;;
    }
    .section-blog__card-img {
        border-radius: 12px;
    }
    .section-blog__card-content {
        padding: 8px;
    }
    .section-blog__card-title {
        margin-bottom: 4px;
        font-size: 14px;
        color: var(--main-white);
    }
    .section-blog__card-descr {
        margin-bottom: 0;
        font-size: 10px;
        opacity: 0.4;
    }
    .section-contacts__heading {
        margin-bottom: 60px;
    }
    .section-hot {
        display: none;
    }
    .section-contact-hot {
        display: flex;
    }
    .section-hot__slide {
        padding: 12px;
        border-radius: 12px;
    }
    .section-hot__img {
        border-radius: 20px;
    }
    .section-hot__heading {
        margin-bottom: 50px;
        font-size: 22px;
    }
    .section-application__input::placeholder {
        font-size: 14px;
    }
    .section-application__btn-wrap {
        width: 100%;
        max-width: 332px;
        align-items: center;
        margin-left: auto;
        margin-right: auto;
    }
    .section-application__color-order {
        justify-content: center;
        width: 100%;
        max-width: 332px;
        text-align: center;
        background-color: var(--main-white);
        background-position: right 70px center;
    }
    .footer__container {
        padding: 16px 20px 40px;
        border-radius: 24px;
    }
    .footer__text {
        margin-bottom: 26px;
        font-size: 16px;
    }
    .footer__link-btn {
        padding: 14px 65px 14px 20px;
        margin-bottom: 23px;
        height: 77px;
        font-size: 32px;
        background-size: 30px;
        background-position: right 30px center;
    }
    .footer__nav {
        flex-wrap: wrap;
    }
    .footer__nav-list {
        margin-right: 30px;
        margin-bottom: 16px;
        width: 45%;
    }
    .footer__phone-list {
        width: 45%;
        margin-right: 0;
        margin-bottom: 16px;
    }
    .footer__right-list {
        width: 100%;
    }
    .footer__link {
        font-size: 14px;
        opacity: 0.4;
    }
    .footer__link-top {
        font-size: 16px;
        opacity: 1;
    }
    .footer__bottom-list {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .footer__bottom-text {
        margin-right: 0;
        margin-bottom: 6px;
        font-size: 14px;
    }
    .section-card-tours__list {
        overflow: hidden;
        width: 100%;
    }
    .section-card-tours__wrapper {
        flex-wrap: nowrap;
    }
    .section-card-tours__item {
        width: max-content;
    }
    .section-card-tours__content {
        flex-direction: column;
    }
    .section-card-tours__card-wrap {
        grid-template-columns: 1fr 1fr;
        row-gap: 13px;
        column-gap: 23px;
    }
    .section-card-tours__btn {
        width: 100%;
        padding: 9px 22px;
        font-size: 14px;
        background-image: none;
    }
    .section-card-tours__btn.active {
        background-size: 19px;
        background-position: left 3px center;
    }
    .section-card-tours__descr {
        width: 85%;
    }
    .show-more-btn {
        padding: 8px 26px 8px 0;
        font-size: 14px;
        background-size: 26px;
    }
    .section-special__wrap-label {
        flex-wrap: wrap;
    }
    .label-mr {
        margin-right: 8px;
        margin-bottom: 8px;
    }
    .section-card-tours__right {
        display: none;
    }
    .section-tours__container {
        padding: 90px 14px 22px;
        background-image: url(../img/bann_mob.jpg);
        border-radius: 40px;
    }
    .section-transfer__container {
        background-image: url(../img/transf-mob.jpg);
    }
    .section-translator__container {
        background-image: url(../img/transl-mob.jpg);
    }
    .section-tours__content {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }
    .section-shopping__container {
        background-image: url(../img/shop-bann.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        
    }
    .section-wedding__container {
        background-image: url(../img/wed.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    .section-places__container {
        background-image: url(../img/places-mob.jpg);
    }
    .section-descr {
        display: flex;
        flex-direction: column;
        padding-top: 10px;
    }
    .section-descr__img {
        border-radius: 40px;
    }
    .section-descr__content {
        flex-direction: column;
        margin-bottom: 0;
    }
    .section-descr__left {
        margin-right: 0;
    }
    .section-descr__date {
        margin: 0 auto 26px;
        text-align: center;
        font-size: 14px;
    }
    .wrap-filters {
        flex-wrap: wrap;
        margin-bottom: 30px;
    }
    .hotel-select {
        width: max-content;
        margin-right: 6px;
    }
    .hotel-select-trigger {
       padding: 5px 40px 5px 20px;
        font-size: 14px;
    }
    .city-trigger {
        padding-left: 30px;
    }
    .hotel-select-trigger::after {
        top: 3px;
        left: 8px;
    }
    .hotel-select-trigger {
        background-position: right 10px center;
    }
    .section-hotels__card-img {
        border-radius: 12px;
    }
    .section-timetable__wrapper {
        display: flex;
        flex-direction: column;
    }
    .review-title {
        font-size: 18px;
    }
    .section-details {
        padding-top: 10px;
    }
    .section-details__content {
        flex-direction: column;
    }
    .section-details__center {
        display: flex;
    }
    .section-details__img-wrap {
        display: none;
    }
    .section-details__left {
        width: 100%;
        align-items: center;
        margin-bottom: 24px;
        margin-right: 0;
        padding-left: 12px;
        padding-right: 12px;
    }
    .section-details__heading {
        width: 100%;
        text-align: center;
        font-size: 24px;
        margin-bottom: 6px;
    }
    .section-details__city {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .section-details__rating {
        display: flex;
    }
    .section-details__link {
        font-size: 0;
        padding: 16px 0px 16px 40px;
    }
    .btn-wrap {
        margin-bottom: 8px;
        align-items: end;
    }
    .rating-value {
        margin-left: 2px;
    }
    .section-details__wrap-label {
        top: 12px;
        left: 7px;
    }
    .section-details__img-main {
        border-radius: 12px;
        height: 100%;
        width: 100%;
    }
    .section-details__content {
        margin-bottom: 40px;
    }
    .mb0 {
        margin-bottom: 0;
    }
    .section-details__slider {
        margin-bottom: 38px;
    }
    .section-details__slide {
        height: 178px;
    }
    .section-details__rigth {
        width: 100%;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .price-wrap {
        align-items: center;
    }
    .section-details__price {
        font-size: 24px;
        margin-bottom: 2px;
    }
    .section-details__subtitle {
        padding: 5px 20px 5px 5px;
        font-size: 12px;
        margin-bottom: 18px;
    }
    .section-details__btn {
        width: 100%;
        max-width: 303px;
    }
    .section-details__descr {
        font-size: 14px;
        text-align: center;
    }
    .section-details__text {
        margin-bottom: 10px;
    }
    .section-details__right {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding-left: 12px;
        padding-right: 12px;
    }
    .section-details__right-text {
        font-size: 14px;
        padding: 8px 0 8px 27px;
        margin-bottom: 10px;
        text-align: center;
    }
    .people-icon {
        background-size: 24px;
    }
    .tour-label {
        color: var(--main-white);
    }
    .section-timetable__descr {
        margin-bottom: 24px;
    }
    .section-timetable__slide {
        align-items: center;
    }
    .section-timetable__slide.hidden {
        display: none;
    }
    .section-timetable__slide-heading {
        font-size: 20px;
        margin-bottom: 16px;
    }
    .section-timetable__slide-text {
        font-size: 14px;
        padding-left: 22px;
        opacity: 0.8;
        text-align: center;
    }
    .section-timetable__slide-text::after {
        width: 6px;
        height: 6px;  
    }
    .accordion__control {
        padding: 12px;
        border-radius: 16px;
    }
    .accordion__wrap-title {
        font-size: 20px;
    }
    .accordion__content {
        font-size: 14px;
    }
    .section-review__content {
        flex-direction: column;
        align-items: center;
        margin-bottom: 20px;
    }
    .review-rating {
        display: flex;
    }
    .review-rating .rating-value {
        display: flex;
        width: 100%;
    }
    .star-review {
        width: 38px;
        height: 38px;
    }
    .section-review__rating-wrap {
        align-items: start;
    }
    .section-review__rating-wrap .review-rating  {
        flex-wrap: wrap;
    }
    .section-review__select {
        display: none;
    }
    .name-rating {
        display: flex;
        margin-bottom: 0;
    }
    .section-review__left-name {
        margin-right: 18px;
    }
    .section-review__left {
        margin-right: auto;
        margin-bottom: 20px;
    }
    .section-review__right-title {
        font-size: 18px;
        margin-bottom: 12px;
    }
    .section-review__descr {
        font-size: 12px;
        margin-bottom: 14px;
        line-height: 1.5;
    }
    .section-review__descr.hidden {
        display: none;
    } 
    .section-review__btn-more {
        font-size: 14px;
    }
    .section-review__img {
        width: calc(50% - 10px);
    }
    .breadcrumb li a, .breadcrumb li:last-child {
        font-size: 14px;
    }
    .section-types-hotel__card-content, .section-types-hotel__left {
        flex-direction: column;
        align-items: center;
    }
    .section-types-hotel__card {
        justify-content: center;
        padding: 12px;
        margin-bottom: 20px;
    }
    .section-types-hotel__img {
        height: 127px;
        margin-right: 0;
        margin-bottom: 26px;
    }
    .section-types-hotel__name-mob {
        display: block;
        font-size: 16px;
        line-height: 1.5;
        font-weight: 300;
        margin-top: 0;
        margin-bottom: 12px;
    }
    .section-types-hotel__name {
        display: none;
    }
    .section-types-hotel__filter {
        margin-right: 6px;
    }
    .section-types-hotel__old-price {
        display: none;
    }
    .section-types-hotel__price {
        color: var(--main-white);
    }
    .section-types-hotel__btn {
        width: 100%;
        max-width: 303px;
    }
    .section-types-hotel__wrap-filters {
        margin-bottom: 10px;
    }
    .section-types-hotel__btn-more {
        display: flex;
    }
    .section-types-hotel__card.hidden {
        display: none;
    }
    .section-map__map {
        height: 178px;
    }
    .section-map__label {
        top: 12px;
        left: 7px;
        padding: 8px 11px;
        font-size: 12px;
    }
    .section-order {
        padding-bottom: 0;
    }
    .section-order__img {
        display: none;
    }
    .section-order__list {
        flex-wrap: wrap;
        margin-bottom: 38px;
    }
    .section-order__link {
        padding-right: 36px;
        font-size: 14px;
    }
    .section-order__text {
        font-size: 16px;
    }
    .section-order__count {
        font-size: 20px;
    }
    .section-order__top-wrap {
        flex-direction: row;
    }
    .section-order__right-link {
        font-size: 14px;
    }
    .section-order__right {
        padding-top: 0;
        padding-bottom: 0;
    }
    .section-order__title {
        margin-bottom: 8px;
        font-size: 18px;
    }
    .modal-label {
        color: var(--main-white);
        opacity: 1;
    }
    .section-application__price-wrap {
        width: 100%;
        justify-content: space-between;
    }
    .section-application__price {
        font-size: 24px;
    }
    .section-order__descr {
        margin-bottom: 40px;
        font-size: 14px;
    }
}


/*** vikman74 styles ***/

.section-about__descr a, .section-details__descr a, .yellow-link {color: var(--main-dark-yellow); text-decoration:underline dashed;}

.section-about__descr a:hover, .section-details__descr a:hover, .yellow-link:hover  {color: var(--secondary-dark-gray); }

.header-top__list-icon {
  display: flex;
  align-items: center;
  margin-bottom: 3px;
  margin-right:40px;	
}

.header-top__item-icon {
  width: 30px;
  height: 30px;
  margin-right: 8px;
}

.header-top__link-icon {
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid transparent;
  transition: transform .2s ease-in-out;
}

.header-top__link-icon:hover {
    transform: scale(1.2);
}

.header-top__link-icon:active {
    background-color: var(--button-light-click);
}

.header-top__link-icon:focus-visible {
    border: 1px solid var(--dark);
}