.bg-cover {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	max-width: 100%;
	width: 100%;
	height: 100%;
}

.cart-badge {
	display: block;
	position: absolute;
	color: #1b4d83;
	font-weight: 900;
	font-size: 10px;
	top: 3px;
	right: 17px;
	background-color: #fff;
	border: 2px solid #1b4d83;
	border-radius: 15px;
	width: 18px;
	height: 18px;
	text-align: center;
}

.btn-service-search {
	border: 0 !important;
}

.service-details {
	color: #0c3248;
}

.service-title {
	font-size: 27px;
	margin-bottom: 0;
	line-height: 1;
}

.service-features {
	display: inline-block;
	border-radius: 25px;
	background-color: #EAEAEA;
	color: #000012;
	padding: 10px 18px;
	margin-bottom: 10px;
	font-weight: 500;
}

.service-top-location {
	margin-top: 20px;
	font-size: 14px;
}

.service-rating {
	color: #023875;
	font-size: 10px;
}

.service-gallery .carousel-item {
	height: 500px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.results-room-gallery .carousel-item {
	height: 150px;
}

.service-header-container,
.service-gallery-top .carousel-item {
	position: relative;
	height: 500px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.service-header-container .room-form {
	position: absolute;
	bottom: 0;
	z-index: 100;
}

.room-form form {
	background-color: #fff;
}

#descriptions-container {
	transition: max-height 1s;
	max-height: 600px;
	overflow: hidden;
}

#height-controls a {
	display: none;
}

#height-controls a.active {
	display: inline-block;
	border-radius: 25px;
	background-color: #023875;
	color: #fff;
	padding: 10px 18px;
	margin-bottom: 10px;
	font-weight: 600;
	text-decoration: none;
}

.service-detal-carousel-indicators .carousel-inner {
	width: 90%;
}

.service-detal-carousel-indicators .carousel-control,
.carousel-control svg {
	background-color: #fff;
	color: #000;
	height: 30px;
	width: 30px;
	border-radius: 15px;
	cursor: pointer;
}

.service-detal-carousel-indicators .carousel-control {
	top: calc(50% - 15px);
}

.carousel-control svg {
	padding: 6px;
}

.service-detal-carousel-indicators .carousel-item img {
	object-fit: cover;
	width: 100%;
	height: 100%
}

.service-detal-carousel-indicators .carousel-item:hover {
	cursor: pointer;
}

.carousel-control-next, .carousel-control-prev {
	opacity: 0.8;
}

.carousel-control-prev {
	left: 5px;
}

.carousel-control-next {
	right: 5px;
}

.service-sub-section-title {
	font-size: 18px;
	font-weight: 600;
	line-height: 2.2;
	border-bottom: 0.5px solid #90a6c1;
}

.choose-boarding {
	color: #1B4C83;
	font-weight: 600;
}

.results-room-selection-title {
	color: #212529;
	font-size: 15px;
	border-bottom: 1px solid #D6D6D6;
}

.result-choices {
	border-top: 0.5px solid #90a6c1;
	padding-top: 20px;
}

.result-choices.no-border,
.result-choices.has-selected-service {
	border-top: none;
	padding-top: 0;
}

div.room-options.has-selected-service div.result-choices:not(.has-selected-service),
table.has-selected-service tbody.accordion:not(.selected-service) {
	display: none;
}

.cart-container .cart-title {
	font-size: 25px;
}

.cart-container .cart-sub-title {
	background-color: #EAEAEA;
	text-align: left;
	color: #000;
	font-size: 12px;
	font-weight: 600;
	padding: 8px 10px;
}

.cart-container .added-element {
	border-top: 0.5px solid #90a6c1;
	padding-top: 20px;
}

.cart-container .added-element .results-room-title {
	color: var(--color-title);
	font-weight: 600;
	font-size: 16px;
}

.cart-container .added-element .results-room-stars {
	color: #1B4C83;
	font-size: 10px;
}

.cart-container .added-element .service-description-container {
	transition: max-height 1s;
	max-height: 96px;
	overflow: hidden;
}

.cart-container .added-element .service-description-container.no-transition {
	transition: unset;
}

.cart-container .added-element .height-controls {
	text-transform: lowercase;
}

.cart-container .added-element .height-controls a {
	display: none;
}

.cart-container .added-element .height-controls a.active {
	display: unset;
}

.cart-container .added-title {
	font-size: 19px;
	font-weight: 600;
	color: var(--color-title);
}

.cart-container .added-btm .detail-row {
	border-top: 1px solid #D9D9D9;
	padding: 20px 0;
}

.cart-container .added-btm .detail-row .detail-row-title {
	font-size: 14px;
	color: #000;
	font-weight: 600;
}

.cart-container .cart-recap {
	text-align: right;
	margin-bottom: 20px;
	color: #023248;
	font-size: 19px;
	font-weight: 500;
}

.cart-container .cart-recap .cart-price {
	color: #000;
	font-size: 24px;
	font-weight: 600;
}

.cart-container .label-service-note {
	font-weight: 600;
	text-transform: unset;
}

.cart-container .cart-form .label {
	font-weight: 500;
	text-transform: unset;
}

.cart-container .cart-form .detail-section-title {
	color: var(--color-title);
	font-size: 25px;
	font-weight: 500;
}

.cart-container .cart-form .form-title {
	font-size: 17px;
	font-weight: 600;
}

.border-top-primary {
	border-top: 1px solid var(--color-primary);
}

.color-title {
	color: var(--color-title);
}

.result-package-image {
	min-height: 140px;
}

.package-item .result-element {
	cursor: pointer;
}

.result-carousel .carousel-control,
.detail-carousel .carousel-control {
	background-color: unset !important;
}

@media (min-width: 768px) {
	.service-title {
		font-size: 37px;
	}
}
