

/* Start:/local/templates/travelsoft/components/travelsoft/news.list.improved/tours-detail-hotel_intourdv/style.css?179459363314707*/
div.news-list {
	word-wrap: break-word;
}

div.news-list img.preview_picture {
	float: left;
	margin: 0 4px 6px 0;
}

.news-date-time {
	color: #486DAA;
}

.price.for_list_tours {
	font-size: 12px !important;
	padding: 2px 5px !important;
	line-height: 1.5;
}

.price {
	text-align: right;
}

.price .currency {
	color: #555 !important;
	font-size: 14px !important;
}

.price small {
	font-size: 12px;

	padding-right: 3px;
	width: 100%;
}

.price small span {
	font-weight: 500 !important;
	color: #004166;
	font-size: 14px !important;
}

.price span.block {
	padding-top: 30px;
	text-align: left !important;
}

p.price {
	margin-bottom: 15px !important;
}

.red {
	background: #d90023 !important;
	color: #fff !important;
}

.green {
	background: #32a067 !important;
	color: #fff !important;
}

.yellow {
	background: #dcb404 !important;
	color: #fff !important;
}

.box_list .wrapper p {
	margin-bottom: 5px;
}



.card.text-black {
	color: #000;
}

.geodir-opt-list a {
	padding: 5px 15px !important;
}

.card.text-black {
	color: #000;
}

.listing-item-container {
	display: flex;
	margin-top: 2rem;
}

.listing-item-container.lines {
	display: flex;
	flex-flow: column;
}

.listing-item-container.blocks {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 1fr;
	gap: 1rem;
}

.listing-item-container .listing-item {
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-template-rows: 1fr;
	/* grid-area: ; */
	background: #fff;
	margin-bottom: 20px;
	border-radius: 10px;
	height: auto;
	width: 100%;
	overflow: hidden;
	position: relative;
	color: #000;
	grid-template-areas:
		"listing-item-img listing-item-content"
		"listing-item-seats listing-item-seats";
}

.listing-item-content {
	grid-area: listing-item-content;
}

.listing-item-img {
	grid-area: listing-item-img;
}

.listing-item-seats {
	grid-area: listing-item-seats;
}

.listing-item-container.blocks .listing-item {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	grid-template-areas:
		"listing-item-img    "
		"listing-item-content"
		"listing-item-seats  ";
}

.listing-item-container.lines .listing-item .listing-item-img img,
.listing-item-container.blocks .listing-item .listing-item-img img {
	width: 350px;
	height: 250px;
}

.listing-item-container .listing-item .product-grid__tags {
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
	font-size: 12px;
	display: flex;
	flex-flow: column;
	gap: 0.25rem;
}

.listing-item-container .listing-item .product-grid__title a {
	color: #07385c;
	font-size: 18px;
	line-height: 1.3;
	font-family: 'Open Sans';
	font-weight: 700;
}

.listing-item-container .listing-item .product-grid__inner {
	font-size: 16px;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	height: 100%;
	gap: 0.5rem;
}

.listing-item-container .listing-item .product-grid__tags li {
	background-color: blue;
	padding: 0.35rem;
	border-radius: 0.25rem;
	color: #fff;
}

.listing-item-container.lines .listing-item .listing-item-img {
	height: 100%;
	overflow: hidden;
	width: 100%;
}

.listing-item-container.blocks .listing-item .listing-item-img {
	height: auto;
	overflow: hidden;
	width: 100%;
}

.listing-item-container .listing-item .listing-item-content {
	padding: 1.5rem;
	font-size: 14px;
	display: flex;
	flex-flow: column;
}

.listing-item-container .listing-item .listing-item-content .tour-meta {
	color: #a0a0a0;
	padding: 0.5rem;
}

.listing-item-container.blocks .listing-item .listing-item-content .tour-meta {
	padding: 0rem;
}

.listing-item-container .listing-item .listing-item-content .list-tour-options {
	color: #000;
}

.card-rating {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	padding: 0;
	color: #ffc917 !important
}

.listing-item-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.btn.btn-secondary.button-more {
	padding: 0.5rem 2rem;
	color: #fff;
	border-radius: 0.5rem;
	transition: 0.25s;
	background: #0079bf;
	border-color: #0079bf;
}

.btn.btn-secondary.button-more:hover {
	box-shadow: inset 0 0 1px rgba(0, 0, 0, .2);
	background-color: #0099f2;
	color: #fff;
	border-color: transparent;
}

.listing-item-container .listing-item .listing-item-content .product-grid__inner .listing-item-footer .listing-item-price span {
	font-size: 18px;
	line-height: 1.4;
	color: #ff8b1a;
	font-weight: 700;
}

.listing-item-container .listing-item .listing-item-content .product-grid__inner .listing-item-footer .listing-item-price .listing-item-price-for {
	font-size: 13px;
	color: #555;
}

.listing-item-container.blocks .listing-item .listing-item-content .listing-item-footer {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	gap: 1rem;
}

.listing-item-container.blocks .listing-item {
	display: flex;
	flex-flow: column;
}

.listing-item-container.blocks .listing-item .listing-item-content {
	flex-grow: 1;
	flex-basis: 0;
}

.listing-item-container .listing-item .card-options--item {
	color: #fff;
}

.card-rating {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	padding: 0;
	color: #ffc917 !important
}

@media only screen and (max-width: 1023px) {
	.listing-item-container.blocks {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media only screen and (max-width: 767px) {
	.listing-item-container .listing-item {
		grid-template-columns: 2fr 3fr;
	}
}

@media only screen and (max-width: 568px) {
	.listing-item-container.blocks {
		grid-template-columns: repeat(1, 1fr);
	}

	.listing-item-container .listing-item {
		grid-template-columns: 3fr 4fr;
	}

	.listing-item-container.blocks .listing-item .listing-item-img img {
		width: 100%;
		height: auto;
	}
}

/* start */

.lines__buttons {
	display: flex;
	gap: 15px;
	align-items: center;
}

.btn__get-tour {
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
	text-align: center;

	color: #ffffff;
	background: #00B6AA;
	border-radius: 500px;
	height: 60px;
	padding-left: 30px;
	padding-right: 30px;

	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.btn__get-tour:hover {
	color: #ffffff;
}

.btn__go-detail {
	font-weight: 400;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
	text-align: center;

	color: #000000;
	background: #ffffff;
	border: 1px solid #00B6AA;
	border-radius: 500px;
	height: 60px;
	padding-left: 30px;
	padding-right: 30px;

	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.btn__go-detail:hover {
	color: #000000;
}

@media screen and (min-width: 992px) {
	.lines .lines-hidden {
		display: none !important;
	}

	.blocks .blocks-hidden {
		display: none !important;
	}

	.lines .picture_blocks {
		display: none !important;
	}

	.lines .sr-tag,
	.page--new .sr-tags {
		width: 50% !important;
	}

	.swiper__container {
		display: flex;
	}

	.swiperList .swiper-wrapper {
		padding-bottom: 44px;
	}
}



@media screen and (max-width: 991.98px) {
	/* .blocks-hidden {
		display: none !important;
	} */

	.list-main-wrap-opt {
		display: none !important;
	}

	.swiper__nav_room {
		bottom: -12px !important;
	}
}


.country-tours__link {
	text-decoration: none;
	height: 100%;
}

.slider-card {
	border: 1px solid rgb(219, 219, 219);
	border-radius: 25px;
	background: rgb(255, 255, 255);
	min-height: 330px;
	overflow: hidden;
	display: flex;
	flex-direction: column;

	height: 100%;
}

.geodir-category-img.card-post {
	height: 186px;
	overflow: hidden;
}

.geodir-category-img.card-post img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.geodir-category-content .heading {
	color: rgb(0, 0, 0);
	font-family: Manrope;
	font-size: 20px;
	font-weight: 600;
	line-height: 27px;
	letter-spacing: 0%;
	text-align: left;
	margin-bottom: 7px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 300px;
}

.geodir-category-content .text-price {
	color: rgb(0, 0, 0);
	font-family: Manrope;
	font-size: 12px;
	font-weight: 400;
	line-height: 16px;
	text-align: left;
}

.geodir-category-content .text-price span {
	color: rgb(0, 182, 170);
	font-family: Manrope;
	font-size: 20px;
	font-weight: 700;
	line-height: 27px;
	letter-spacing: 0%;
	text-align: left;
}

.geodir-category-content {
	padding: 10px 20px;
	flex: 1 0 0;
}

.listing-item-container.blocks .listing-item {
	border-radius: 25px !important;
}

.sr-tag,
.page--new .sr-tags {
	position: absolute;
	padding: 15px 20px;
}

.page--new .sr-tags {
	top: 0;
	display: flex;
	gap: 10px;
	width: 50%;
	flex-wrap: wrap;
}

.sr-tag div,
.page--new .sr-tag div {
	border-radius: 5000px;
	background: rgb(255, 255, 255);
	color: rgb(0, 0, 0);
	font-family: Manrope;
	font-size: 10px;
	font-weight: 400;
	line-height: 14px;
	text-align: center;
	display: inline-block;
	padding: 2px 10px;
	margin-right: 5px;
	margin-bottom: 8px;
}

.page--new .sr-tag div {
	margin: 0;
	font-size: 12px;
	line-height: 16px;
	border: 1px solid rgba(128, 128, 128, 0.33);
}

.country {
	color: rgb(0 0 0 / 60%);
	font-family: Manrope;
	font-size: 12px;
	font-weight: 500;
	line-height: 13px;
	text-align: left;
	margin-bottom: 10px;
}

.country img {
	height: 13px;
	margin-right: 5px;
}

.tour-duration {
	color: rgb(0 0 0 / 60%);
	font-family: Manrope;
	font-size: 10px;
	font-weight: 400;
	line-height: 10px;
	letter-spacing: 0%;
	text-align: left;
}

.tour-duration img {
	width: 15px;
	height: 15px;
}

.blocks .picture_list {
	display: none !important;
}

.swiperList .swiper-wrapper {
	align-items: stretch;
}


.swiperList .swiper-slide {
	height: auto;
	display: flex;
	flex-direction: column;
}


.swiperList .swiper-slide>a {
	display: flex;
	flex: 1 1 auto;
}


.swiperList .slider-card {
	display: flex;
	flex-direction: column;
	height: 100%;
}


.swiperList .geodir-category-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 1 1 auto;
}

.swiperList .geodir-category-img.card-post {
	height: 186px;
	overflow: hidden;
}

.swiperList img {
	width: 100%;
}

.navigation__recommendation {
	top: -85px;
}

.lines .listing-item {
	display: block !important;
}

.geodir-category-img.card-post {
	z-index: 9;
}

.swiperList {
	flex: 1 0 0;
	border-radius: 25px;
}

@media screen and (max-width: 991.98px) {
	.swiperList {
		border-radius: 25px 25px 0px 0px;
	}
}

.listing-item {
	border-radius: 25px !important;
}

.lines__description {
	flex: 1 0 0;
}

.picture {
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.picture__aspect {
	position: relative;
	width: 100%;
	aspect-ratio: 16/9;
	height: 100%;
}

.picture__absolute {
	position: absolute;
	inset: calc(.25rem*0);
}

.picture__img {
	object-fit: cover;
	height: 100%;
	width: 100%;

}

.lines .geodir-category-content .text-price {
	background: none !important;
}

.lines .geodir-category-content {
	padding: 20px 25px !important;
}

.list-main-wrap-opt .grid-opt>ul>li.active {
	color: #00B6AA !important;
	fill: #00B6AA !important;
	border-color: none !important;
	pointer-events: none !important;
}

.list-main-wrap-opt .grid-opt>ul>li {
	border: none !important;
	padding: 6px !important;
	transition: all .25s ease-in-out;
}

.list-main-wrap-opt .grid-opt>ul>li.active svg rect {
	transition: all .25s ease-in-out;
}

.list-main-wrap-opt .grid-opt>ul>li.active svg rect {
	fill: #00B6AA !important;
}

.grid-opt {
	background: #ffffff !important;
	padding: 0 !important;
	border-radius: 5px !important;
}

@media (max-width: 768px) {
	.swiperList .swiper-navigation {
		position: absolute;
		right: 0;
		top: auto;
		width: 100%;
		bottom: 0;
	}

	.swiperList .swiper-button-prev {
		border-radius: 24px;
		width: 24px !important;
		height: 24px !important;
		font-size: 11px !important;
	}

	.swiperList .swiper-button-next {
		border-radius: 24px;
		width: 24px !important;
		height: 24px !important;
		font-size: 11px !important;
	}

	.swiperList .swiper-button-prev:after,
	.swiperList .swiper-button-next:after {
		font-size: 11px !important;
	}

	.swiperList .geodir-category-content .heading {
		font-size: 18px;
	}
}


.swiperList .swiper-navigation {
	position: absolute;
	right: 15px;
	width: 91px;
}

.swiperList .swiper-button-prev {
	left: 0;
	box-sizing: border-box;
	background: #ffffff;
	width: 30px !important;
	height: 30px !important;
	border-radius: 50%;
	transition: all .25s ease-in-out;
}

.swiperList .swiper-button-next {
	right: 0;
	box-sizing: border-box;
	width: 30px !important;
	height: 30px !important;
	border-radius: 50%;
	background: #ffffff;
	transition: all .25s ease-in-out;
}

.swiperList .swiper-button-prev:hover,
.swiperList .swiper-button-next:hover {
	background: #00B6AA;
	border-color: #fff;
}

.swiperList .swiper-button-prev:hover:after,
.swiperList .swiper-button-next:hover:after {
	color: #fff;
}

.swiperList .swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
	font-size: 11px !important;
	width: 30px;
	color: #000;
	line-height: 30px !important;
	text-align: center;
	font-weight: 900;
}

.swiperList .swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
	font-size: 11px !important;
	width: 30px;
	color: #000;
	line-height: 30px !important;
	font-weight: 900;
	text-align: center;
}



.swiper-pagination_room {
	position: absolute;
	z-index: 10;
	bottom: -20px !important;
	display: flex;
	justify-content: center;
}

.swiper-pagination_room .swiper-pagination-bullet-active {
	background: #00B6AA !important;
}

.swiper-pagination_room .swiper-pagination-bullet {
	background: #DAF4F1 !important;
}


@media screen and (max-width: 991.98px) {
	.geodir-category-img.card-post {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 60px;
	}
}




.pg {
	display: block;
	margin-bottom: 10px;
}

@media screen and (min-width: 992px) {
	.pg {
		margin-bottom: 100px;
	}
}

.pg__list {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 0;
	margin: 0;
	list-style: none;
	justify-content: center;
}

.pg__item {
	display: flex;
	align-items: center;
}

.pg__btn {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;

	background: #DAF4F1;
	color: #111;
	text-decoration: none;
	font-size: 14px;
	line-height: 1;

	transition: transform .12s ease, background-color .12s ease, color .12s ease;
	user-select: none;
}

.pg__btn:hover {
	transform: translateY(-1px);
}

.pg__btn:focus-visible {
	outline: 3px solid rgba(0, 150, 136, .35);
	outline-offset: 3px;
}

.pg__btn--active {
	background: #00B6AA;
	color: #fff;
}

.pg__item--dots {
	width: 30px;
	justify-content: center;
}

.pg__dots {
	font-size: 26px;
	line-height: 14px;
	color: #111;
}
/* End */


/* Start:/local/templates/travelsoft/css/landing.css?17946102777083*/
/* Посадки по месяцам и праздникам (/tours/<страна>/v-dekabre/ и т.п.)
   и лента "Цены по месяцам" на страницах стран и курортов.
   Разметка: app/src/Landing/View/. Карточки туров берут классы и стили
   списков туров (news.list.improved/tours-detail-hotel_intourdv/style.css),
   здесь только своё. См. docs/landings.md. */

.ld-page {
	padding-bottom: 20px;
	color: #000;
}

.ld-lead {
	margin: -10px 0 20px;
	font-size: 18px;
	line-height: 1.5;
	color: #000;
}

.ld-intro {
	margin: 0 0 24px;
	max-width: 860px;
	font-size: 16px;
}

/* Лента месяцев */

.ld-months {
	margin: 0 0 10px;
}

.ld-months--place {
	margin: 0 0 30px;
}

.ld-months__title {
	margin: 0 0 12px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.ld-months__list {
	display: flex;
	gap: 10px;
	margin: 0;
	padding: 0 0 8px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
}

.ld-months__item {
	flex: 0 0 auto;
	scroll-snap-align: start;
}

/* На широком экране месяцы переносятся на вторую строку, а не уезжают за край */
@media (min-width: 992px) {
	.ld-months__list {
		flex-wrap: wrap;
		overflow-x: visible;
	}
}

.ld-month {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 136px;
	height: 100%;
	padding: 12px 14px;
	border: 1px solid #E6E6E6;
	border-radius: 12px;
	background: #fff;
	color: #000;
	text-decoration: none;
	transition: border-color .2s ease;
}

a.ld-month:hover,
a.ld-month:focus-visible {
	border-color: #00B6AA;
	color: #000;
	text-decoration: none;
}

.ld-month--current {
	border-color: #00B6AA;
	box-shadow: inset 0 0 0 1px #00B6AA;
}

.ld-month__name {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	white-space: nowrap;
}

.ld-month__price {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	color: #00B6AA;
	white-space: nowrap;
}

.ld-month--empty {
	background: #F2F2F2;
}

.ld-month--empty .ld-month__name,
.ld-month--empty .ld-month__price {
	color: #808080;
	font-weight: 400;
}

/* Разделы страницы */

/* У section на сайте общий padding 60px сверху и снизу: здесь отступы свои */
.ld-page .ld-section,
.ld-links {
	padding: 0;
}

.ld-section {
	margin-top: 50px;
}

.ld-title {
	margin: 0 0 20px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
}

.ld-cards {
	margin-top: 0 !important;
}

.ld-card__line {
	display: flex;
	align-items: flex-start;
	gap: 5px;
	margin-top: 8px;
	font-size: 12px;
	line-height: 1.4;
}

.ld-card__line img {
	flex: 0 0 auto;
}

.ld-cards .geodir-category-content .text-price {
	margin-top: 12px;
}

/* В списках туров вид "плиткой" есть только на десктопе: ниже 992px шаблон
   списка делает .card-post полоской 60px поверх слайдера (вид "строкой").
   У посадки слайдера нет, картинка остаётся картинкой. */
@media (max-width: 991.98px) {
	.ld-cards .geodir-category-img.card-post {
		position: static;
		width: auto;
		height: 186px;
	}
}

/* Таблица вылетов */

.ld-table-wrap {
	border: 1px solid #E6E6E6;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}

.ld-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	line-height: 1.4;
}

.ld-table th,
.ld-table td {
	padding: 12px 16px;
	border-bottom: 1px solid #E6E6E6;
	text-align: left;
	vertical-align: top;
}

.ld-table tbody tr:last-child td {
	border-bottom: 0;
}

.ld-table th {
	font-size: 14px;
	font-weight: 600;
	color: #4D4D4D;
	background: #F2F2F2;
}

.ld-table__date,
.ld-table__nights,
.ld-table__price {
	white-space: nowrap;
}

.ld-table__price {
	font-weight: 700;
	color: #00B6AA;
}

.ld-table__ask {
	font-weight: 400;
	color: #808080;
}

.ld-table__tour a {
	color: #000;
}

.ld-table__tour a:hover {
	color: #4351DD;
}

/* Баннер записи */

.ld-banner {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-top: 40px;
	border: 1px solid #E6E6E6;
	border-radius: 25px;
	overflow: hidden;
	background: #fff;
	color: #000;
	text-decoration: none;
}

a.ld-banner:hover {
	color: #000;
	border-color: #00B6AA;
	text-decoration: none;
}

.ld-banner__image {
	flex: 0 0 40%;
	width: 40%;
	max-height: 240px;
	object-fit: cover;
}

.ld-banner__text {
	padding: 20px 24px 20px 0;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
}

/* Текст, погода, вопросы */

.ld-text {
	max-width: 860px;
	font-size: 16px;
}

.ld-faq__item {
	max-width: 860px;
	border-bottom: 1px solid #E6E6E6;
}

.ld-faq__question {
	padding: 16px 0;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.4;
	cursor: pointer;
}

.ld-faq__answer {
	padding: 0 0 16px;
	font-size: 16px;
	line-height: 1.55;
}

/* Заявка и перелинковка */

.ld-form {
	margin-top: 50px;
}

.ld-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px 40px;
	margin-top: 50px;
}

.ld-links--new-year {
	display: block;
	margin: 0 0 30px;
}

.ld-links__title {
	margin: 0 0 12px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
}

.ld-links__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ld-links__list li {
	margin: 0 0 8px;
	font-size: 15px;
	line-height: 1.4;
}

.ld-links__list a {
	color: #4351DD;
}

.ld-links__price {
	margin-left: 6px;
	font-weight: 700;
	color: #00B6AA;
	white-space: nowrap;
}

.ld-links--new-year .ld-links__list {
	columns: 3 220px;
	column-gap: 30px;
}

.ld-links--new-year .ld-links__list li {
	break-inside: avoid;
}

@media (max-width: 991.98px) {
	.ld-links {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767.98px) {
	.ld-lead {
		margin-top: -14px;
		font-size: 16px;
	}

	.ld-title {
		font-size: 22px;
	}

	.ld-section,
	.ld-form,
	.ld-links {
		margin-top: 40px;
	}

	.ld-month {
		min-width: 124px;
	}

	/* Таблица на телефоне: строка вылета карточкой из двух строк */
	.ld-table thead {
		display: none;
	}

	.ld-table,
	.ld-table tbody {
		display: block;
	}

	.ld-table tr {
		display: grid;
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"date price"
			"tour tour"
			"nights nights";
		gap: 4px 12px;
		padding: 12px 16px;
		border-bottom: 1px solid #E6E6E6;
	}

	.ld-table tbody tr:last-child {
		border-bottom: 0;
	}

	.ld-table td {
		padding: 0;
		border: 0;
	}

	.ld-table__date {
		grid-area: date;
		font-weight: 600;
	}

	.ld-table__price {
		grid-area: price;
		text-align: right;
	}

	.ld-table__tour {
		grid-area: tour;
	}

	.ld-table__nights {
		grid-area: nights;
		font-size: 14px;
		color: #4D4D4D;
	}

	.ld-banner {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.ld-banner__image {
		width: 100%;
		flex-basis: auto;
	}

	.ld-banner__text {
		padding: 16px 20px;
		font-size: 18px;
	}
}

/* End */


/* Start:/local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/style.css?179459532911627*/
/*
 * Блок "Нужна помощь с выбором?": билетик и форма-корешок.
 *
 * Билетик свёрстан текстом, а не картинкой: на любой ширине он целый.
 * Раскладка билета зависит от его собственной ширины (container query):
 * уже 480px он компактный, с логотипом в полосе сверху, шире - как
 * посадочный талон, с вертикальной синей полосой слева. Браузер без
 * container queries показывает компактный вариант.
 *
 * Форма стоит справа от билета с 992px (граница мобильной вёрстки сайта),
 * уже - под билетом. Между ними линия отрыва.
 *
 * Правила формы пишем через #subscriptionTemplate25: стили шаблона
 * travelsoft_ticket_intourdv25_head (модалка в футере) подключаются позже и
 * задают form#ts_leave_ticket то же, что раньше задавал этот файл.
 */

/* Без отступов колонки: края блока совпадают с подборкой туров или отелей над ним */
.col-12.ct-ticket-col {
    padding-left: 0;
    padding-right: 0;
}

.ct-ticket-cta {
    display: flex;
    flex-direction: column;
}

/* Билет */

.ct-ticket {
    container-type: inline-size;
    display: flex;
    min-width: 0;
    overflow: hidden;
    border-radius: 24px 24px 14px 14px;
    background: #fff;
    color: #3A3A3A;
    font-family: Manrope, sans-serif;
    line-height: 1.2;
    text-align: left;
}

.ct-ticket__inner {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.ct-ticket__brand {
    display: flex;
    flex: none;
    align-items: center;
    justify-content: center;
    height: 56px;
    background: #4351DD;
}

.ct-ticket__logo {
    display: block;
    width: 160px;
    max-width: 70%;
    height: auto;
}

.ct-ticket__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

/* Маршрут: откуда, линия с самолётом, куда; ниже даты и время */

.ct-ticket__flight {
    display: grid;
    flex: 1 1 auto;
    grid-template-columns: auto minmax(36px, 1fr) auto;
    grid-template-rows: auto auto minmax(14px, 1fr) auto auto;
    grid-template-areas:
        "from-city . to-city"
        "from-code path to-code"
        ". . ."
        "from-date . to-date"
        "from-time . to-time";
    column-gap: 12px;
    padding: 18px 18px 16px;
}

.ct-ticket__city {
    align-self: end;
    font-size: 11px;
    line-height: 1.3;
    overflow-wrap: break-word;
}

.ct-ticket__city--from {
    grid-area: from-city;
}

.ct-ticket__city--to {
    grid-area: to-city;
}

.ct-ticket__code {
    margin-top: 2px;
    color: #4351DD;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.ct-ticket__code--from {
    grid-area: from-code;
}

.ct-ticket__code--to {
    grid-area: to-code;
}

.ct-ticket__path {
    display: flex;
    grid-area: path;
    align-items: center;
    align-self: center;
    min-width: 0;
}

.ct-ticket__dash {
    display: block;
    flex: 1 1 0;
    min-width: 0;
    height: 3px;
    overflow: hidden;
}

.ct-ticket__dash line {
    stroke-width: 3;
    stroke-dasharray: 12 4;
}

/* Пунктир идёт от самолёта: неполный штрих уходит к коду аэропорта */
.ct-ticket__dash--before {
    transform: scaleX(-1);
}

.ct-ticket__plane {
    display: block;
    flex: none;
    width: 28px;
    height: 28px;
    margin: 0 4px;
}

.ct-ticket__date {
    font-size: 11px;
    line-height: 1.3;
    white-space: nowrap;
}

.ct-ticket__date--from {
    grid-area: from-date;
}

.ct-ticket__date--to {
    grid-area: to-date;
}

.ct-ticket__time {
    margin-top: 2px;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
}

.ct-ticket__time--from {
    grid-area: from-time;
}

.ct-ticket__time--to {
    grid-area: to-time;
}

/* Рейс, выход, место; знак в правом нижнем углу срезан краем билета */

.ct-ticket__details {
    --ct-pad-x: 18px;
    --ct-pad-y: 16px;
    --ct-mark: 56px;
    position: relative;
    display: grid;
    flex: 1 1 auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: auto minmax(12px, 1fr) auto;
    column-gap: 10px;
    padding: 14px var(--ct-pad-x) var(--ct-pad-y);
    border-top: 1px solid #E0E0E0;
}

/* Место под знак в углу: текст в этой клетке не встанет */
.ct-ticket__details::after {
    content: "";
    grid-row: 3;
    grid-column: 4;
    height: calc(var(--ct-mark) - var(--ct-pad-y));
}

.ct-ticket__item {
    display: block;
    min-width: 0;
}

.ct-ticket__item--passenger {
    grid-row: 3;
    grid-column: 1 / span 2;
}

.ct-ticket__item--boarding {
    grid-row: 3;
    grid-column: 3;
}

.ct-ticket__label {
    display: block;
    font-size: 10px;
    line-height: 1.3;
    white-space: nowrap;
}

.ct-ticket__value {
    display: block;
    margin-top: 3px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
}

.ct-ticket__mark {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: var(--ct-mark);
    height: var(--ct-mark);
}

/* Широкий билет: посадочный талон с синей полосой слева */

@container (min-width: 480px) {
    .ct-ticket__inner {
        flex-direction: row;
    }

    .ct-ticket__brand {
        position: relative;
        width: 64px;
        height: auto;
        min-height: 236px;
    }

    .ct-ticket__logo {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 188px;
        max-width: none;
        transform: translate(-50%, -50%) rotate(-90deg);
    }

    .ct-ticket__flight {
        grid-template-columns: auto minmax(72px, 1fr) auto;
        grid-template-rows: auto auto minmax(24px, 1fr) auto auto;
        column-gap: clamp(16px, 3.5cqi, 28px);
        padding: clamp(24px, 5cqi, 36px) clamp(24px, 6cqi, 44px) clamp(20px, 4cqi, 28px);
    }

    .ct-ticket__city {
        font-size: 13px;
    }

    .ct-ticket__code {
        margin-top: 4px;
        font-size: clamp(26px, 5cqi, 34px);
    }

    .ct-ticket__dash {
        height: 4px;
    }

    .ct-ticket__dash line {
        stroke-width: 4;
        stroke-dasharray: 25 5;
    }

    .ct-ticket__plane {
        width: clamp(36px, 7cqi, 50px);
        height: clamp(36px, 7cqi, 50px);
        margin: 0 6px;
    }

    .ct-ticket__date {
        font-size: 15px;
    }

    .ct-ticket__time {
        margin-top: 6px;
        font-size: 20px;
    }

    .ct-ticket__details {
        --ct-pad-x: clamp(24px, 6cqi, 44px);
        --ct-pad-y: clamp(20px, 4cqi, 28px);
        --ct-mark: clamp(80px, 16cqi, 112px);
        grid-template-rows: auto minmax(24px, 1fr) auto;
        column-gap: 16px;
        padding-top: clamp(20px, 4cqi, 28px);
    }

    .ct-ticket__label {
        font-size: 11px;
    }

    .ct-ticket__value {
        margin-top: 6px;
        font-size: 17px;
    }
}

/* Корешок с формой */

.ct-ticket-cta__form {
    position: relative;
    display: flex;
    justify-content: center;
    padding: 28px 20px 24px;
    border-radius: 14px 14px 24px 24px;
    background: #fff;
}

/* Линия отрыва между билетом и корешком */
.ct-ticket-cta__form::before {
    content: "";
    position: absolute;
    top: 0;
    left: 14px;
    right: 14px;
    border-top: 1px dashed #C0C0C0;
}

#subscriptionTemplate25 #ts_leave_ticket {
    display: block;
    width: 100%;
    max-width: 440px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
}

@media (min-width: 992px) {
    .ct-ticket-cta {
        flex-direction: row;
        align-items: stretch;
    }

    .ct-ticket {
        flex: 1 1 auto;
        border-radius: 30px 14px 14px 30px;
    }

    /*
     * Билет тянется по высоте формы. Лишняя высота сначала раздвигает
     * маршрут и время, рейс и пассажира (до 64px), остальное делится
     * поровну сверху и снизу.
     */
    .ct-ticket__flight {
        grid-template-rows: auto auto minmax(24px, 64px) auto auto;
        align-content: center;
    }

    .ct-ticket__details {
        grid-template-rows: auto minmax(24px, 64px) auto;
        align-content: center;
    }

    .ct-ticket-cta__form {
        flex: 0 0 40%;
        align-items: center;
        max-width: 440px;
        padding: 32px 36px;
        border-radius: 14px 30px 30px 14px;
    }

    .ct-ticket-cta__form::before {
        top: 14px;
        bottom: 14px;
        left: 0;
        right: auto;
        border-top: 0;
        border-left: 1px dashed #C0C0C0;
    }
}

/* Форма */

.subscribe-wrap25 .success-container {
    display: none !important;
}

.subscribe-wrap25 .subscription-button {
    border-radius: 500px;
    background: rgb(0, 182, 170);
    width: 100%;
    height: 62px;
}

.subscribe-wrap25 h4 {
    text-align: center;
    margin-bottom: 30px;
}

.subscribe-wrap25 h3 {
    margin-bottom: 15px;
}

.communication-methods .radio-buttons-group {
    display: flex;
    gap: 10px;
}

.communication-methods .radio-buttons-group input[type="radio"] {
    display: none;
}

.communication-methods .radio-buttons-group label {
    padding: 5px 15px;
    cursor: pointer;
    background-color: white;
    transition: 0.3s;
    box-sizing: border-box;
    border: 0.5px solid rgb(100, 120, 255);
    border-radius: 500px;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 10px;
    font-weight: 400;
    line-height: 14px;
    text-align: left;
}

.form-leave-ticket label {
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
    margin-bottom: 10px;
}

.communication-methods {
    margin-top: 15px;
    margin-bottom: 30px;
}

.communication-methods .radio-buttons-group input[type="radio"]:checked+label {
    background: rgb(100, 120, 255);
    color: white;
}

.form-leave-ticket .form-group input.form-input {
    border-radius: 500px;
    border: 1px solid rgba(0, 0, 0, 0.2);
}

.subscribe-wrap25 input[type="text"] {
    border-radius: 500px;
    background: rgb(248, 248, 250);
    padding: 20px 30px !important;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 400;
    text-align: left;
    border: none;
    width: 100%;
}

.subscribe-wrap25 input[type="tel"] {
    border-radius: 500px;
    background: rgb(248, 248, 250);
    padding: 20px 30px !important;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 400;
    text-align: left;
    border: none;
    width: 100%;
}

.subscribe-wrap25 .btn {
    border-radius: 500px !important;
    background: rgb(0, 182, 170) !important;
    text-align: center;
    border: none;
}

.subscribe-wrap25 .btn:hover {
    background: rgb(68, 81, 221) !important;
}

@media (max-width: 768px) {
    .subscribe-wrap25 h4 {
        text-align: left;
        margin-bottom: 30px;
    }
}

/* End */
/* /local/templates/travelsoft/components/travelsoft/news.list.improved/tours-detail-hotel_intourdv/style.css?179459363314707 */
/* /local/templates/travelsoft/css/landing.css?17946102777083 */
/* /local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/style.css?179459532911627 */
