			/* Стили для двухколоночного расписания с картинками */
			.trip-header {
				text-align: center;
				margin-bottom: 2rem;
			}
			
			.trip-info {
				display: flex;
				flex-wrap: wrap;
				gap: 1rem;
				margin: 1.5rem 0;
				justify-content: center;
			}
			
			.info-item {
				display: flex;
				align-items: center;
				gap: 0.5rem;
				background: rgba(74, 111, 165, 0.1);
				padding: 0.5rem 1rem;
				border-radius: 50px;
				font-size: 0.9rem;
			}
			
			.info-item i {
				color: #4a6fa5;
			}
			
			/* Двухколоночный контейнер */
			.two-column-itinerary {
				display: flex;
				gap: 2rem;
				margin: 2rem 0;
				flex-wrap: wrap;
			}
			
			.column {
				flex: 1;
				min-width: 300px;
				position: relative;
			}
			
			/* Стили для карточек с временем и картинками */
			.schedule-card {
				display: flex;
				margin-bottom: 1.5rem;
				background: #f8f9fa;
				border-radius: 8px;
				overflow: visible;
				box-shadow: 0 2px 8px rgba(0,0,0,0.1);
				transition: transform 0.3s ease;
				position: relative;
			}
			
			.schedule-card:hover {
				transform: translateY(-3px);
				box-shadow: 0 5px 15px rgba(0,0,0,0.15);
			}
			
			.time-section {
				min-width: 100px;
				background: #2c3e50;
				color: white;
				padding: 1rem;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				text-align: center;
			}
			
			.time-main {
				font-weight: bold;
				font-size: 1.1rem;
				margin-bottom: 0.3rem;
			}
			
			.time-duration {
				font-size: 0.85rem;
				opacity: 0.9;
			}
			
			.card-content {
				flex: 1;
				display: flex;
				padding: 1rem;
				position: relative;
			}
			
			.card-image {
				width: 120px;
				height: 120px;
				flex-shrink: 0;
				margin-right: 1rem;
				border-radius: 6px;
				overflow: hidden;
			}
			
			.card-image img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				transition: transform 0.5s ease;
			}
			
			.schedule-card:hover .card-image img {
				transform: scale(1.05);
			}
			
			.card-text {
				flex: 1;
				position: relative;
			}
			
			.card-title {
				font-size: 1.2rem;
				color: #2c3e50;
				margin-bottom: 0.5rem;
				font-weight: bold;
				padding-right: 40px; /* Место для кнопки "i" */
			}
			
			.card-description {
				color: #555;
				font-size: 0.95rem;
				line-height: 1.5;
				padding-right: 40px; /* Место для кнопки "i" */
			}
			
			/* Стили для кнопки "i" */
			.info-button {
				position: absolute;
				bottom: 10px;
				right: 10px;
				width: 30px;
				height: 30px;
				border-radius: 50%;
				background-color: #4a6fa5;
				color: white;
				display: flex;
				align-items: center;
				justify-content: center;
				cursor: pointer;
				z-index: 10;
				transition: all 0.3s ease;
				border: 2px solid white;
				box-shadow: 0 2px 5px rgba(0,0,0,0.2);
				-webkit-tap-highlight-color: transparent; /* Убирает синий фон при клике на мобильных */
			}
			
			.info-button:hover, .info-button:active {
				background-color: #2c3e50;
				transform: scale(1.1);
			}
			
			.info-button span {
				font-size: 0.9rem;
				font-weight: bold;
				font-style: normal;
			}
			
			/* ОБЩИЕ стили для дополнительной информации - одинаковые для всех устройств */
			.additional-info {
				display: none;
				position: fixed;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				width: 90%;
				max-width: 500px;
				max-height: 80vh;
				background-color: white;
				border-radius: 8px;
				padding: 1.5rem;
				box-shadow: 0 10px 30px rgba(0,0,0,0.3);
				z-index: 1000;
				border: 1px solid #e0e0e0;
				box-sizing: border-box;
				overflow-y: auto;
			}
			
			.additional-info.active {
				display: block;
				animation: fadeIn 0.3s ease;
			}
			
			.info-header {
				font-weight: bold;
				color: #2c3e50;
				margin-bottom: 0.8rem;
				font-size: 1.2rem;
				border-bottom: 2px solid #4a6fa5;
				padding-bottom: 0.5rem;
			}
			
			.info-content {
				color: #555;
				font-size: 0.95rem;
				line-height: 1.5;
			}
			
			.info-content ul {
				padding-left: 1rem;
				margin-top: 0.5rem;
				margin-bottom: 0;
			}
			
			.info-content li {
				margin-bottom: 0.5rem;
				line-height: 1.4;
			}
			
			@keyframes fadeIn {
				from { opacity: 0; transform: translate(-50%, -45%); }
				to { opacity: 1; transform: translate(-50%, -50%); }
			}
			
			/* Оверлей для всех устройств */
			.info-overlay {
				display: none;
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background-color: rgba(0,0,0,0.5);
				z-index: 999;
			}
			
			.info-overlay.active {
				display: block;
			}
			
			.controls {
				display: flex;
				justify-content: center;
				margin: 2rem 0;
			}
			
			.itinerary-btn {
				padding: 0.75rem 1.5rem;
				border: none;
				border-radius: 50px;
				font-weight: 600;
				cursor: pointer;
				display: flex;
				align-items: center;
				gap: 0.5rem;
				transition: all 0.3s ease;
				background-color: #2c3e50;
				color: white;
				font-size: 1rem;
				-webkit-tap-highlight-color: transparent;
			}
			
			.itinerary-btn:hover, .itinerary-btn:active {
				transform: translateY(-2px);
				box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
				background-color: #4a6fa5;
			}
			
			.tab {
				overflow: hidden;
				background-color: #f1f1f1;
				padding: 1rem;
				margin-bottom: 2rem;
				border-radius: 5px;
			}
			
			.tab a {
				color: #4a6fa5;
				text-decoration: none;
				margin-right: 10px;
			}
			
			.tab a:hover {
				text-decoration: underline;
			}
			
			/* Стили для кнопки "Подробнее на нашем сайте" */
			.toggle-details {
				background-color: #4a6fa5;
				color: white;
				border: none;
				padding: 0.75rem 1.5rem;
				border-radius: 5px;
				cursor: pointer;
				font-size: 1rem;
				margin-top: 1.5rem;
				margin-bottom: 1.5rem;
				transition: background-color 0.3s;
				display: flex;
				align-items: center;
				gap: 0.5rem;
			}
			
			.toggle-details:hover {
				background-color: #2c3e50;
				transform: translateY(-2px);
				box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
			}
			
			.hidden-details {
				display: none;
				margin-top: 1.5rem;
				padding: 1.5rem;
				background-color: #f8f9fa;
				border-radius: 8px;
				border-left: 4px solid #4a6fa5;
				animation: fadeIn 0.3s ease;
			}
			
			.hidden-details.active {
				display: block;
			}
			
			.hidden-details h3 {
				color: #2c3e50;
				margin-bottom: 1rem;
				font-size: 1.3rem;
			}
			
			.hidden-details p {
				margin-bottom: 1rem;
				line-height: 1.6;
			}
			
			.hidden-details ul {
				padding-left: 1.5rem;
				margin-bottom: 1rem;
			}
			
			.hidden-details li {
				margin-bottom: 0.5rem;
				line-height: 1.5;
			}
			
			/* Стили для кнопки "Подробнее на нашем сайте" во втором разделе */
			.blue-button {
				background-color: #4a6fa5;
				color: white;
				border: none;
				padding: 0.75rem 1.5rem;
				border-radius: 5px;
				cursor: pointer;
				font-size: 1rem;
				margin-top: 1.5rem;
				margin-bottom: 1.5rem;
				transition: all 0.3s ease;
				display: inline-flex;
				align-items: center;
				gap: 0.5rem;
				text-decoration: none;
				font-family: inherit;
			}
			
			.blue-button:hover {
				background-color: #2c3e50;
				transform: translateY(-2px);
				box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
			}
			
			.blue-button i {
				font-size: 0.9rem;
			}
			
			/* Улучшения для мобильных устройств */
			@media (max-width: 768px) {
				.two-column-itinerary {
					flex-direction: column;
					gap: 1rem;
				}
				
				.column {
					width: 100%;
					min-width: 100%;
				}
				
				.schedule-card {
					flex-direction: column;
					margin-bottom: 1rem;
				}
				
				.time-section {
					min-width: 100%;
					flex-direction: row;
					justify-content: space-between;
					padding: 0.75rem 1rem;
					border-radius: 8px 8px 0 0;
				}
				
				.time-main {
					font-size: 1.2rem;
				}
				
				.card-content {
					flex-direction: column;
					padding: 1rem;
				}
				
				.card-image {
					width: 100%;
					height: 180px;
					margin-right: 0;
					margin-bottom: 1rem;
					border-radius: 6px;
				}
				
				.card-title {
					font-size: 1.3rem;
					padding-right: 40px;
				}
				
				.card-description {
					font-size: 1rem;
					padding-right: 40px;
				}
				
				.info-button {
					width: 36px;
					height: 36px;
					bottom: 15px;
					right: 15px;
				}
				
				.info-button span {
					font-size: 1.1rem;
				}
				
				.additional-info {
					width: 95%;
					max-width: 95%;
					padding: 1.2rem;
				}
				
				.info-header {
					font-size: 1.3rem;
				}
				
				.info-content {
					font-size: 1rem;
				}
				
				.toggle-details, .blue-button {
					width: 100%;
					justify-content: center;
					padding: 1rem;
					text-align: center;
				}
				
				.hidden-details {
					padding: 1.2rem;
				}
			}
			
			/* Стили для очень маленьких экранов */
			@media (max-width: 480px) {
				.trip-info {
					flex-direction: column;
					align-items: center;
				}
				
				.info-item {
					width: 100%;
					justify-content: center;
				}
				
				.time-section {
					padding: 0.5rem;
				}
				
				.time-main {
					font-size: 1.1rem;
				}
				
				.card-image {
					height: 150px;
				}
				
				.additional-info {
					width: 95%;
					max-width: 95%;
					padding: 1rem;
				}
			}
			
			/* Переопределение некоторых стилей шаблона для лучшей интеграции */
			#main header {
				text-align: center;
				margin-bottom: 2rem;
			}
			
			#main header p {
				font-size: 1.1rem;
				margin-top: 0.5rem;
				line-height: 1.6;
			}
			
			/* Улучшения для печати */
			@media print {
				.info-button, .info-overlay {
					display: none !important;
				}
				
				.additional-info {
					display: block !important;
					position: static !important;
					transform: none !important;
					box-shadow: none !important;
					border: 1px solid #ccc !important;
					margin-top: 1rem !important;
					margin-bottom: 1rem !important;
					page-break-inside: avoid;
					max-width: 100% !important;
					width: 100% !important;
				}
				
				.two-column-itinerary {
					display: block !important;
				}
				
				.column {
					page-break-inside: avoid;
				}
				
				.hidden-details {
					display: block !important;
				}
				
				.toggle-details, .blue-button {
					display: none !important;
				}
			}