/* cabin-rental-specials-new.css — Mobile First (replaces cabin-rental-specials.css)
   Breakpoints: 720 (max-width)
   ========================================================================== */

#PageMainContentCabinRentalSpecials {

}

	#PageMainContentCabinRentalSpecials * {
		font-size: 15px !important;
	}

		#PageMainContentCabinRentalSpecials div.deals {
			display: flex;
			flex-direction: column;
			gap: 12px;
		}

			#PageMainContentCabinRentalSpecials article.deal {
				background-color: rgb(255, 255, 255);
				border: 1px solid rgb(72, 72, 78);
				border-radius: 8px;
				display: flex;
				margin: 0;
				min-height: 120px;
				position: relative;
			}

				#PageMainContentCabinRentalSpecials div.deal__stub {
					align-items: center;
					border-radius: 7px 0 0 7px;
					display: flex;
					flex: 0 0 170px;
					flex-direction: column;
					gap: 2px;
					justify-content: center;
					padding: 16px 10px;
					text-align: center;
				}

				#PageMainContentCabinRentalSpecials .deal--special div.deal__stub {
					background-color: rgb(0, 40, 104);
					color: rgb(255, 255, 255);
				}

				#PageMainContentCabinRentalSpecials .deal--code div.deal__stub {
					background-color: rgb(255, 255, 255);
					box-shadow: inset 0 0 0 2px rgb(0, 40, 104);
					color: rgb(0, 40, 104);
				}

					#PageMainContentCabinRentalSpecials span.deal__pre {
						color: inherit;
						font-size: 13px !important;
						font-weight: bold;
					}

					#PageMainContentCabinRentalSpecials span.deal__value {
						color: inherit;
						font-size: 44px !important;
						font-weight: bold;
						letter-spacing: -0.01em;
						line-height: 1;
					}

					#PageMainContentCabinRentalSpecials span.deal__unit {
						color: inherit;
						font-size: 14px !important;
						font-weight: bold;
					}

				#PageMainContentCabinRentalSpecials div.deal__perf {
					background-image: radial-gradient(circle, rgb(154, 154, 162) 1.2px, transparent 1.6px);
					background-repeat: repeat-y;
					background-size: 2px 9px;
					flex: 0 0 2px;
					margin: 12px 0;
					position: relative;
				}

					#PageMainContentCabinRentalSpecials div.deal__perf::before,
					#PageMainContentCabinRentalSpecials div.deal__perf::after {
						background-color: rgb(255, 255, 255);
						border: 1px solid rgb(72, 72, 78);
						border-radius: 50%;
						box-sizing: content-box;
						content: "";
						height: 18px;
						left: 50%;
						margin-left: -9px;
						position: absolute;
						width: 18px;
					}

					#PageMainContentCabinRentalSpecials div.deal__perf::before {
						clip-path: inset(50% 0 0 0);
						top: -22px;
					}

					#PageMainContentCabinRentalSpecials div.deal__perf::after {
						bottom: -22px;
						clip-path: inset(0 0 50% 0);
					}

				#PageMainContentCabinRentalSpecials div.deal__body {
					display: flex;
					flex: 1 1 auto;
					flex-direction: column;
					gap: 6px;
					justify-content: center;
					min-width: 0;
					padding: 16px 20px;
				}

					#PageMainContentCabinRentalSpecials h3.deal__name {
						color: rgb(31, 31, 36);
						font-size: 19px !important;
						font-weight: bold;
						line-height: 1.3;
						margin: 0;
						padding: 0;
					}

					#PageMainContentCabinRentalSpecials p.deal__sentence {
						color: rgb(58, 58, 66);
						line-height: 1.45;
						margin: 0;
						padding: 0;
					}

					#PageMainContentCabinRentalSpecials div.deal__tags {
						display: flex;
						flex-wrap: wrap;
						gap: 6px;
					}

						#PageMainContentCabinRentalSpecials span.deal__tag {
							align-items: center;
							background-color: rgb(247, 247, 250);
							border: 1px solid rgb(226, 226, 232);
							border-radius: 999px;
							color: rgb(74, 74, 85);
							display: inline-flex;
							font-size: 13px !important;
							font-weight: bold;
							gap: 5px;
							line-height: 1.5;
							padding: 2px 9px;
						}

						#PageMainContentCabinRentalSpecials span.deal__tag--callout {
							background-color: rgb(232, 237, 247);
							border-color: rgb(199, 210, 232);
							color: rgb(0, 40, 104);
						}

							#PageMainContentCabinRentalSpecials svg.deal__icon {
								flex: 0 0 13px;
								height: 13px;
								width: 13px;
							}

					#PageMainContentCabinRentalSpecials div.deal__foot {
						align-items: center;
						display: flex;
						flex-wrap: wrap;
						gap: 12px;
						margin: 4px 0 0 0;
					}

						#PageMainContentCabinRentalSpecials span.deal__code {
							align-items: center;
							border: 2px dashed rgb(0, 40, 104);
							border-radius: 6px;
							color: rgb(0, 40, 104);
							display: inline-flex;
							font-weight: bold;
							letter-spacing: 0.04em;
							min-height: 36px;
							padding: 0 12px;
						}

						#PageMainContentCabinRentalSpecials a.deal__use {
							align-items: center;
							background-color: rgb(0, 40, 104);
							border-radius: 6px;
							color: rgb(255, 255, 255);
							display: inline-flex;
							font-weight: bold;
							min-height: 44px;
							padding: 0 16px;
							text-decoration: none;
							white-space: nowrap;
						}

						#PageMainContentCabinRentalSpecials a.deal__use:hover,
						#PageMainContentCabinRentalSpecials a.deal__use:focus-visible {
							background-color: rgb(0, 28, 74);
							color: rgb(255, 255, 255);
							outline: 2px solid rgb(0, 40, 104);
							outline-offset: 2px;
						}

		#PageMainContentCabinRentalSpecials div.deals--ledger {
			gap: 0;
		}

			#PageMainContentCabinRentalSpecials .deals--ledger article.deal {
				align-items: center;
				border: 0;
				border-radius: 0;
				border-top: 1px solid rgb(226, 226, 232);
				gap: 24px;
				min-height: 0;
				padding: 16px 0;
			}

			#PageMainContentCabinRentalSpecials .deals--ledger article.deal:last-child {
				border-bottom: 1px solid rgb(226, 226, 232);
			}

				#PageMainContentCabinRentalSpecials .deals--ledger div.deal__stub,
				#PageMainContentCabinRentalSpecials .deals--ledger .deal--special div.deal__stub,
				#PageMainContentCabinRentalSpecials .deals--ledger .deal--code div.deal__stub {
					align-items: flex-start;
					background-color: transparent;
					border-radius: 0;
					box-shadow: none;
					color: rgb(0, 40, 104);
					flex: 0 0 132px;
					padding: 0;
					text-align: left;
				}

				#PageMainContentCabinRentalSpecials .deals--ledger span.deal__value {
					font-size: 32px !important;
				}

				#PageMainContentCabinRentalSpecials .deals--ledger div.deal__perf {
					display: none;
				}

				#PageMainContentCabinRentalSpecials .deals--ledger div.deal__body {
					align-items: center;
					column-gap: 24px;
					display: grid;
					grid-template-columns: minmax(0, 1fr) auto;
					padding: 0;
					row-gap: 6px;
				}

					#PageMainContentCabinRentalSpecials .deals--ledger div.deal__body > * {
						grid-column: 1;
					}

					#PageMainContentCabinRentalSpecials .deals--ledger div.deal__foot {
						grid-column: 2;
						grid-row: 1 / span 3;
						justify-content: flex-end;
						margin: 0;
					}

		#PageMainContentCabinRentalSpecials h2.v12sectionHeading {
			color: rgb(0, 40, 104);
			font-size: 24px !important;
			font-weight: bold;
			line-height: 1.2;
			margin: 32px 0 6px 0;
		}

		#PageMainContentCabinRentalSpecials h2.v12sectionHeading:first-child {
			margin-top: 0;
		}

		#PageMainContentCabinRentalSpecials p.v12sectionIntro {
			color: rgb(72, 72, 78);
			margin: 0 0 12px 0;
		}

		#PageMainContentCabinRentalSpecials p.v12promoStatus {
			font-weight: bold;
			margin: 8px 0 0 0;
		}

		#PageMainContentCabinRentalSpecials p.v12promoStatus:empty {
			display: none;
		}

#LeftSearchFormPromotionalCode.v12promoFilled {
	background-color: rgb(255, 244, 204);
	box-shadow: 0 0 0 3px rgb(0, 40, 104);
	transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {

	#LeftSearchFormPromotionalCode.v12promoFilled {
		transition: none;
	}

}

@media (max-width: 720px) {

	#PageMainContentCabinRentalSpecials article.deal {
		flex-direction: column;
	}

	#PageMainContentCabinRentalSpecials div.deal__stub {
		border-radius: 7px 7px 0 0;
		flex: 0 0 auto;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 8px;
		justify-content: flex-start;
	}

	#PageMainContentCabinRentalSpecials div.deal__perf {
		background-repeat: repeat-x;
		background-size: 9px 2px;
		margin: 0 12px;
	}

	#PageMainContentCabinRentalSpecials div.deal__perf::before,
	#PageMainContentCabinRentalSpecials div.deal__perf::after {
		left: auto;
		margin: -9px 0 0 0;
		top: 50%;
	}

	#PageMainContentCabinRentalSpecials div.deal__perf::before {
		clip-path: inset(0 0 0 50%);
		left: -22px;
	}

	#PageMainContentCabinRentalSpecials div.deal__perf::after {
		bottom: auto;
		clip-path: inset(0 50% 0 0);
		right: -22px;
	}

	#PageMainContentCabinRentalSpecials .deals--ledger article.deal {
		align-items: stretch;
		gap: 10px;
	}

	#PageMainContentCabinRentalSpecials .deals--ledger div.deal__stub,
	#PageMainContentCabinRentalSpecials .deals--ledger .deal--special div.deal__stub,
	#PageMainContentCabinRentalSpecials .deals--ledger .deal--code div.deal__stub {
		align-items: baseline;
		flex: 0 0 auto;
		flex-direction: row;
		gap: 8px;
	}

	#PageMainContentCabinRentalSpecials .deals--ledger div.deal__body {
		grid-template-columns: minmax(0, 1fr);
	}

	#PageMainContentCabinRentalSpecials .deals--ledger div.deal__foot {
		grid-column: 1;
		grid-row: auto;
		justify-content: flex-start;
	}

}
