.rh-details-section .rh-listing-sidebar {
	position: sticky;
	top: 20px;
}
.rhm-booking-user-sec {
	display: none;
}
.rhm-logged-in .rhm-booking-user-sec,
body.logged-in .rhm-booking-user-sec {
	display: block;
}
.rhm-booking-user-sec select {
	max-width: 180px;
	outline: none;
	-webkit-appearance: none;
	border-radius: 3px;
	font-size: 16px;
}
.rhm-payment-wrap .rhm_card_row label {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
	border-radius: 10px;
	padding: 10px;
	margin-top: 15px;
	background-color: #ffffff;
	border: 2px solid #ff6e00;
	cursor: pointer;
	transition: 0.3s;
}
.rhm-payment-wrap .rhm_card_row label:hover {
	background-color: #ff6e00;
	color: #fff;
	transition: 0.3s;
}
.rhm-payment-wrap .rhm_card_row .rhm_card_field {
	padding-right: 30px;
}
.rhm-payment-wrap .rhm_card_row .rhm_card_field input[type="radio"] {
	width: 18px;
	height: 18px;
}
.rhm-payment-wrap .rhm_card_row .rhm_card_field:last-child {
	padding-right: 0;
}
.rhm-payment-wrap a#rhm-add-new-card {
	font-size: 16px;
	font-weight: 400;
	text-decoration: none;
	text-align: center;
	display: block;
	color: #ff6e00;
}
.rh-error-col p {
	color: #e72a3b;
	background-color: #ffd7db;
	font-size: 20px;
	font-weight: 500;
	padding: 10px 20px;
	text-align: center;
}
.rh-listing-sidebar {
    background-color: #ffffff;
    padding: 10px;
    border: 1px solid #c3c3c3;
    border-radius: 10px;
    box-shadow: 0px 1px 3px #b1b1b1;
}
.rhm-step:not(.active) {
	display: none;
}

.rh-details-section .rh-listing-sidebar {
	width: 100%;
	float: none;
	margin: 0px;
}
.rh-details-section .rh_car_box_sec_inner {
	background-color: #ffffff;
    padding: 10px;
    border: 1px solid #c3c3c3;
    border-radius: 10px;
    box-shadow: 0px 1px 3px #b1b1b1;
    width: 100%;
    padding-bottom: 15px;
    display: flex;
    margin-bottom: 15px;

}
.txt-box-head {
	text-align: center;
	margin-bottom: 10px;
}

.rh-details-txt-box {
	margin: 0px 20px;
}
.txt-box-head h3 {
	margin-bottom: 10px;
	font-size: 22px;
	font-weight: 600;
}
.txt-box-mid {
	padding: 10px 0px;
	border-top: 1px dotted #a6a6a6;
	border-bottom: 1px dotted #a6a6a6;
	text-align: center;
}
.txt-box-mid ul.rh-car-feature1 {
	justify-content: center;
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
	margin-bottom: 5px;
}
.txt-box-mid ul.rh-car-feature1 li {
	margin-bottom: 0px;
	margin: 0px 8px;
	box-shadow: none;
	border: 1px solid #a3a3a3;
	border-radius: 4px;
    padding: 5px 15px 5px 25px;
}
.txt-box-mid ul.rh-car-feature1 li i {
    background: url(../../images/frontend/icons-96.png);
    background-repeat: no-repeat;
    background-size: 80px;
    background-position: 100% 56%;
    width: 20px;
    height: 20px;
    float: left;
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
}
.txt-box-mid ul.rh-car-feature1 li.rh-icon-doors i {
    background-position: 99% 0%;
}
.txt-box-mid ul.rh-car-feature1 li.rh-icon-transmsn.manual i {
    background-position: 67% 0;
}
.txt-box-mid ul.rh-car-feature1 li.rh-icon-ac i {
    background-position: -4% -20px;
}
.rh-details-img-box {
	width: 75%;
	margin: auto;
}
.location-box h4 {
	display: inline-block;
	margin: 10px 0px;
	font-size: 18px;
	font-weight: 600;
	font-style: italic;
	font-family: poppins;
}
.location-box span {
	display: inline-block;
	float: right;
	margin: 10px 0px;
	font-size: 16px;
	font-weight: 600;
	font-style: italic;
	color: #1f1f1f;
	font-family: poppins;
}
.pick-location .location-detail span {
	font-size: 16px;
	font-weight: 400;
}
.pick-location .mb-15 span,
.rhm-booking-price span {
	font-size: 16px;
	font-weight: 400;
}
.rhm-price-box h4,
.rhm-coupon-box h4 {
	margin: 0px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: 600;
	font-style: italic;
	font-family: poppins;
}
.rhm-coupon-box input[type="text"] {
	margin-bottom: 20px;
	padding: 16px;
	border-radius: 5px;
	font-weight: 500;
	font-size: 16px;
	outline: none;
}
.rh-booking-table tr th, .rh-booking-table tr td {
	border: none;
}
table.rh-booking-table {
	border: none;
	border-bottom: 1px solid #cecece;
}
.rhm-price-box h4 {
	margin-top: 30px;
	margin-bottom: 10px;
}
.rhm-coupon-box {
	margin-top: 20px;
}
.location-detail {
	margin-bottom: 15px;
}
.txt-box-bottom {
	margin-top: 10px;
}
.pick-location .mb-15 {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.location-detail i {
	display: inline-block;
	vertical-align: bottom;
	height: 24px;
	width: 24px;
	background: url(../../images/frontend/icons-96.png) no-repeat;
	background-size: 96px;
	margin-right: 8px;
	background-position: -48px -96px;
}
.rhm-personal-details .rh-col-4 .rhm-input {
    outline: none;
    padding: 8px 15px;
    font-size: 16px;
}
.mb-15 {
	margin-bottom: 15px;
}
.pickup-date-info i {
	display: inline-block;
	vertical-align: bottom;
	height: 24px;
	width: 24px;
	background: url(../../images/frontend/icons-96.png) no-repeat;
	background-size: 96px;
	margin-right: 8px;
	background-position: -72px -144px;
}
.pickup-time-info {
	float: right;
}
.pickup-time-info i {
	display: inline-block;
	vertical-align: bottom;
	height: 24px;
	width: 24px;
	background: url(../../images/frontend/icons-96.png) no-repeat;
	background-size: 96px;
	margin-right: 8px;
	background-position: -24px -264px;
}
.detail-right-box h4 {
	margin: 10px 0px;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	padding-bottom: 10px;
	border-bottom: 1px solid #cecece;
}
.detail-right-box {
	width: 100%;
}
.rh-booking-table {
	width: 100%;
	margin: 10px auto;
	border-bottom: 1px solid #cecece;
}
.rh-booking-table tr th {
	width: 40%;
	text-align: left;
	padding: 5px 0px;
}
.rh-booking-table tr td {
	text-align: right;
	padding: 5px 0px;
	color: #707070;
}
.mid-table {
	width: 75%;
	margin: auto;
}
.detail-right-box span.pay-amt {
	float: right;
	display: inline-block;
	background: yellow;
	font-weight: 600;
	padding: 5px;
	/* margin: 10px 0px; */
}
.detail-right-box span.pay-txt {
	background: yellow;
	font-weight: 600;
	padding: 5px;
}
.features ul li i {
	background: url(../../images/frontend/tick-thin.png);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: 100%;
	width: 20px;
	height: 20px;
	float: left;

	margin-right: 10px;
}
.mid-table .features h4 {
	color: green;
	margin-top: 20px;
	font-size: 18px;
}
.mid-table .features-list ul li {
	width: 50%;
	margin-bottom: 10px;
	list-style: none;
	position: relative;
	margin-left: 0;
}
.features-list ul {
	display: flex;
	flex-wrap: wrap;
}
.pick-location .location-detail {
	margin-bottom: 15px;
	display: flex;
	width: 100%;
}
.pick-location .location-detail i {
	display: inline-block;
	vertical-align: bottom;
	height: auto;
	width: auto;
	background: none;
	margin-right: 8px;
}
.rh-up-services-info {
	padding: 10px;
	background: #009a004a;
	color: #3e3e3e;
	font-size: 18px;
	font-weight: 400;
	border-left: 6px solid green;
	margin-bottom: 15px;
}
.rhm-card {
	padding: 10px;
	margin-bottom: 15px;
	box-shadow: 0px 1px 3px #b1b1b1;
	border-radius: 10px;
}
.rhm-card > h3 {
	text-align: center;
	font-size: 18px;
	margin: 10px 0px 25px 0px;
	font-weight: 500;
	font-family: poppins;
}
.rhm-booking-contact {
	display: none;
}
.rhm-logged-in .rhm-booking-contact {
	display: block;
}
.rh-upselling-group.rh-upselling-container {
	width: 100%;
}
.rhm-personal-details {
    background: #fff;
}
.rhm-personal-details .error {
    color: #cf1021;
}
.rhm-select.error, .rhm-input.error {
    color: #000;
    border: 1px solid #cf1021;
}
.rh-upselling-group.rh-upselling-container .rh-group-services-options {
	width: 25%;
	padding: 0px 15px;
	min-width: 207px;
}
.rhm-personal-details .rh-col-4 .rhm-select {
    font-size: 16px;
}
.rh-upselling-group.rh-upselling-container .rhm-service-container {
	width: 25%;
	padding: 0px 15px;
	flex-grow: 1;
	min-width: 207px;
}

.rh-upselling-group.rh-upselling-container .rh-group-services {
	width: 100%;
	display: flex;
}

.rh-upselling-group .rh-group-title h3 {
	margin: 10px 0px;
	font-size: 32px;
	font-weight: 600;
}

.rh-group-title p {
	margin-top: 0;
}

.rh-upselling-group .rh-group-title {
	text-align: center;
}

.rhm-up-service h3 {
	margin: 10px 0px;
	font-size: 20px;
	font-weight: 600;
}

.rhm-up-service .rhm-service-title p {
	margin: 0;
	font-size: 16px;
	text-align: center;
}

.rhm-service-container {
	text-align: center;
}

.rhm-service-container .rhm-service-title {
	padding: 10px;
	border: 1px solid #c5c5c5;
	min-height: 91px;
	color: #6c6c6c;
	display: flex;
	flex-direction: column;
	margin-bottom: 7px;
	justify-content: center;
}

.rh-group-services-options {
	margin-top: 98px;
}

.rh-service-option {
	text-align: center;
	padding: 10px;
	border: 1px solid #fd5d1b;
	border-radius: 10px;
	margin-bottom: 7px;
	min-height: 80px;
	color: #6c6c6c;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.rhm-service-container .rhm-ug-box {
	padding: 10px;
	min-height: 80px;
	margin-bottom: 7px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #e5e5e5;
	font-size: 16px;
}

.rhm-service-container .rhm-select-service .rhm-service-qty {
	display: none;
}
.rhm-service-container .rhm-select-service .rhm-service-active {
	display: none;
}
.rhm-service-container.active.quantifiable
	.rhm-select-service
	.rhm-service-qty {
	display: block;
}
.rhm-service-container.active .rhm-select-service .rhm-service-active {
	display: block;
}
.rhm-service-container.active .rhm-select-service .rhm-service-inactive {
	display: none;
}
.rh-service-option .rh-service-option-name {
	font-size: 16px;
	font-weight: bold;
}

.rh-service-option .rh-service-option-price {
	font-size: 13px;
}

.rh-service-option.rh-franchise-option .rh-service-option-price {
	text-decoration: line-through;
}

.rhm-service-container .rhm-ug-box .rhm-service-total-price-amt {
	font-size: 13px;
}

.rhm-ug-box.rhm-service-franchaise.active {
	background-color: #95e493;
	font-weight: 700;
}

.rhm-ug-box.rh-ug-service.availabe {
	background-color: #f3f3f3;
	font-weight: 700;
	color: green;
	font-size: 25px;
}

.rhm-ug-box.rhm-service-price {
	background-color: #95e493;
	font-weight: 700;
}

.rhm-ug-box.rhm-service-confirm-btn {
	background: none;
	padding: 0;
}

.rhm-service-add-btn,
.rhm-close-info {
	width: 100%;
	padding: 10px;
	border-radius: 6px;
	border: 1px solid #ff6e00;
	background: #ff6e00;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	cursor: pointer;
	text-transform: unset;
}

.rhm-service-add-btn.selected {
	color: green;
	font-weight: 600;
	background: transparent;
	border-width: 2px;
	display: flex;
	justify-content: center;
}

.rhm-skip-service {
	padding: 0px 15px;
}

.rhm-skip-service-btn,
.rhm-forget-pass-submit {
	width: 100%;
	padding: 10px;
	border: none;
	border-radius: 6px;
	font-weight: 600;
	font-size: 16px;
	cursor: pointer;
	color: #fff;
	background-color: #8f8f8f;
}
.rhm-extra-services-wrap {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
.rhm-extra-services-wrap .rhm-extra-service:first-child {
	border-right: 1px solid #dbdbdb;
}
.rhm-extra-service {
	width: 50%;
	display:flex;
	padding: 10px 10px 10px 25px;
}
.rhm-extra-service-icon {
	width: 100px;
}
.rhm-extra-service-icon img.rhm-icon {
	width: 100px;
	height: 100px;
	object-fit: cover;
}
.rhm-extra-service-details {
	padding-left: 15px;
	display: grid;
}
.rhm-extra-service-details .rhm-service-name {
	font-size: 16px;
	font-weight: 700;
	font-style: italic;
}
.rhm-extra-service-details .rhm-service-short-desc,
.rhm-extra-service-details .rhm-service-desc {
	font-size: 15px;
	font-style: italic;
}
.rhm-extra-service-details .rhm-service-price {
	font-size: 20px;
	font-weight: 700;
	margin-top: 5px;
	align-self: end;
}
.rhm-qty-minus,
.rhm-qty-plus {
	background: #ff6e00;
	border: 1px solid #ff6e00;
	color: #fff;
	padding: 8px;
	display: inline-block;
	margin: 0;
	cursor: pointer;
	width: auto;
    max-width: fit-content;
}
.rhm-qty-minus {
	border-radius: 3px 0px 0px 3px;
}
.rhm-qty-plus {
	border-radius: 0px 3px 3px 0px;
}
.rhm-extra-service-details .rhm-input {
	width: 52px;
	height: 100%;
	padding: 8px 12px;
	display: inline-block;
	margin: 0;
	font-weight: 800;
	border: 1px solid #ff6e00;
	color: gray;
	text-align: center;
}
.rhm-extra-service-details .rhm-input:focus {
	outline: none;
}
.rhm-qty-box.rhm-service-select {
	display: flex;
	height: 45px;
}
.rhm-skip-extra-service .rhm-btn.rhm-skip-service-btn {
	background: #ff6e00;
}
.rhm-response.success {
    text-align: center;
    color: #1e9b07;
    font-weight: 500;
}

/* ======== Booking Form Page Style ========= */

.rhm-personal-details label {
	display: block;
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 5px;
}

.rhm-select,
.rhm-input {
	width: 100%;
	padding: 8px;
	border: 1px solid #b9b9b9;
	outline: none;
}
#rhm-mobile {
	border-width: 1px 1px 1px 0px;
}

.rhm-mobile-code {
	width: 25%;
	float: left;
}

.rhm-mobile {
	width: 75%;
	float: left;
}

.rhm-personal-details .rh-col-4 {
	margin-bottom: 20px;
}

.rhm-card-notice p {
	font-size: 16px;
	font-weight: 700;
}

.StripeElement {
	width: 100%;
	padding: 8px;
	border: 1px solid #b9b9b9;
	margin-top: 20px;
}

.payment-info p {
	text-align: center;
	font-size: 14px;
}
div#rhm-card-errors span {
    color: #cf1021;
    display: block;
    position: relative;
    padding: 0px 0px 0 25px;
    margin: 3px 0;
}
div#rhm-card-errors span:before {
    content: "ⓧ";
    position: absolute;
    top: 2px;
    left: 3px;
    font-size: 18px;
}
.ElementsApp .InputElement.is-invalid {
    color: #cf1021;
}
.rhm-payment-wrap h3 {
	margin-bottom: 15px;
}

.cards-logo {
	text-align: center;
	margin-bottom: 15px;
}

.rhm-payment-wrap label {
	display: block;
	font-weight: 700;
	color: gray;
	font-size: 16px;
	margin-bottom: 5px;
}
.rhm-card-form .rh-col-12 .rhm-input {
    padding: 8px 10px;
    font-size: 16px;
	outline: none;
}
.rhm-input.checkbox {
	width: auto;
	margin-right: 15px;
}

.rhm-input.checkbox + label {
	font-size: 16px;
	color: #333;
}

.rhm-terms-section {
	padding-bottom: 20px;
}

.rhm-input.checkbox {
	width: 17px;
	height: 17px;
	margin-top: 5px;
	position: relative;
	top: 3px;
}

.rhm-input.checkbox + label {
	font-size: 16px;
	color: #333;
	cursor: pointer;
}

.rhm-terms-section {
	padding-bottom: 20px;
}

.rhm-pay-online {
	width: 100%;
	padding: 20px;
	border-radius: 6px;
	outline: none;
	font-size: 16px;
	background-color: #ff6e00;
	border: 1px solid #ff6e00;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	max-width: 100%;
}
.rhm-pay-offline {
	width: 100%;
	padding: 20px;
	border-radius: 6px;
	outline: none;
	font-size: 16px;
	background-color: #a4a4a4;
	border: 1px solid #a4a4a4;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	max-width: 100%;
}

.rhm-btn {
	cursor: pointer;
}

.rhm-pay-online:hover {
	background: #ff5a00;
}

.rhm-pay-offline:hover {
	background: gray;
}

#rhmInfoModal h5 {
	margin: 10px 0px;
}

#rhmInfoModal .modal-head {
	border-bottom: 1px solid #dbdbdb;
	margin-bottom: 10px;
}

#rhmInfoModal .modal-body {
	font-size: 17px;
	color: gray;
}

#rhmInfoModalFooter {
	margin-top: 10px;
	border-top: 1px solid #dbdbdb;
	padding-top: 10px;
}
.rhm-personal-details .rh-col-12 {
    text-align: center;
}
.rhm-personal-details .rh-col-12 .rhm-btn {
    margin-bottom: 20px;
}
/* ===== Booking form qty popup style Start ===== */

.rhm-qty-btns {
	width: 100%;
	padding: 8px;
	border-radius: 6px;
	margin-bottom: 5px;
	color: #fff;
	background-color: #ff6e00;
	border: 1px solid #ff6e00;
	font-weight: 800;
	cursor: pointer;
}

.rhm-qty-btns:hover,
.rhm-cancel-btn:hover {
	background-color: #fd5d1b;
	border: 1px solid #fd5d1b;
}
.rhm-no-vehicle.error {
	color: red;
	font-weight: 500;
	text-align: center;
}
.rhm-cancel-btn {
	width: 100%;
	padding: 8px;
	border-radius: 6px;
	margin-bottom: 5px;
	color: #fff;
	background-color: #ff6e00;
	border: 1px solid #ff6e00;
	font-weight: 800;
	cursor: pointer;
	max-width: 100%;
}

#rhmUgQuantityModalFooter {
	border-top: 1px solid #dbdbdb;
	margin: 0px -15px;
	margin-top: 10px;
	padding-top: 10px;
}
/* ==== Booking form qty popup style End ==== */
.rh-booking-listing-row .error {
    color: red;
    font-weight: 500;
}
.rh-booking-listing-row input.error, .rh-booking-listing-row .rhm-select.error {
    border: 1px solid red;
}
.rhm-personal-details label span.rhm-required {
    font-size: 16px;
    color: red;
    padding-left: 5px;
}
.rhm-coupon-error {
	border: 1px solid red !important;
	animation: shake 0.2s ease-in-out 0s 2;
	box-shadow: 0 0 0.5em red;
}
@keyframes shake {
  0% { margin-left: 0rem; }
  25% { margin-left: 0.5rem; }
  75% { margin-left: -0.5rem; }
  100% { margin-left: 0rem; }
}
.rhm-input.checkbox[type="checkbox"]:checked::before {
    top: 2px;
    right: 0;
}
/* Media-query-css */

@media (max-width: 1366px) {
	.rh-upselling-group.rh-upselling-container .rh-group-services-options {
		min-width: 160px;
	}
	.rh-details-txt-box {
		margin: 0px 5px;
	}
	.txt-box-mid ul.rh-car-feature1 li {
		margin: 0px 5px;
		padding: 5px 10px 5px 24px;
	}
}

.rhm-coupon-applied{
	display: none;
}
.rhm-coupon-remove{
	float: right;
	color: red;
	font-size: 20px;
}

#rhm-password-reset-form{
	display: none;
}

@media (max-width: 991px) {
	.rhm-personal-details .rh-col-4 {
		width: 50%;
	}
	.rh-upselling-group .rh-group-title h3 {
		font-size: 26px;
	}
}

@media (max-width: 767px) {
	.rh-booking-form .rh-col-3 {
		width: 100%;
		margin-top: 0px;
	}
	.rh-booking-form-main label.rh-form-label {
		margin-top: 10px;
	}
	.rh-booking-form-main .rh-form-group button[type="submit"] {
		max-width: 100%;
	}
	.rh-booking-form select {
		padding: 15px 20px 15px 30px;
	}
	.rh-booking-form-main .rh-booking-form .rh-col-6 {
		width: 100%;
	}
	.rhm-personal-details .rh-col-4 {
		width: 100%;
		padding: 0 20px;
	}
	.rh-upselling-group .rh-group-title h3 {
		font-size: 22px;
	}
	.rh-group-services-options {
		margin-top: 0;
	}
}
@media (max-width: 600px) {
	.rhm-extra-service {
		width: 100%;
		margin-bottom: 20px;
	}
	.rhm-extra-service-icon img.rhm-icon {
		width: 100%;
		height: 110px;
		object-fit: cover;
	}
	.rhm-extra-service-icon {
		width: 30%;
		margin-right: 20px;
	}
	.rhm-booking-user-sec {
		margin-block: 10px 30px;
	}
	.rhm-input.checkbox + label {
		display: flex;
	}
	.rhm-input.checkbox {
		top: 0;
    	float: left;
	}
	.rhm-final-btns .rh-col-6 {
		width: 100%;
	}
}
@media (max-width: 480px) {
	.rh-booking-table tr td {
		font-size: 14px;
	}
	.mid-table .features-list ul li {
		width: 100%;
	}
	.rh-booking-table tr td {
		display: block;
		text-align: left;
	}
	.rh-booking-table tr th {
		width: 100%;
		display: block;
	}
	.rh-upselling-group .rh-group-title h3 {
		font-size: 18px;
	}
	.rhm-extra-service-icon img.rhm-icon {
		width: 100%;
		height: 70px;
		object-fit: cover;
	}
}


