hr {
	height: 2px;
	width: 20px;
	background-color: #b8a890;
	margin: 20px auto;
	border: none;
}

a {
	font-weight: 600;
	color: #005078;
}

.link {
	background: transparent;
	color: #005078;
	font-weight: 600;
}

.copy-sm {
	font-size: 11px;
}

.card-lg {
	padding: 4em 3.5em;
	margin-top: 2.6em;
}

.shadow {
	-webkit-box-shadow: 0 -15px 16px 0 rgba(0, 0, 0, 0.12), 0 -15px 15px 0 rgba(0, 0, 0, 0.1) !important;
	box-shadow: 0 -15px 16px 0 rgba(0, 0, 0, 0.12), 0 -15px 15px 0 rgba(0, 0, 0, 0.1) !important;
}

.shadow-box {
	-webkit-box-shadow: 0 0px 16px 0 rgba(0, 0, 0, 0.12), 0 0px 15px 0 rgba(0, 0, 0, 0.1) !important;
	box-shadow: 0 0px 16px 0 rgba(0, 0, 0, 0.12), 0 0px 15px 0 rgba(0, 0, 0, 0.1) !important;
}

.p-5 {
	padding: 5em;
}

.mb-6 {
	margin-bottom: 4rem !important;
}

.mt-6 {
	margin-top: 4rem !important;
}

.mt-5 {
	margin-top: 3rem !important;
}

.mt-4 {
	margin-top: 1.5rem;
}

.mt-3 {
	margin-top: 1rem;
}

.mb-3 {
	margin-bottom: 1rem;
}

.mr-5 {
	margin-right: 3rem !important;
}

.p-0 {
	padding: 0px !important;
}

.line {
	border-left: 1px solid #C1C5C8;
}

.text-small {
	font-size: 12px !important;
}

.fix-width {
	max-width: 75%;
	margin: 0 auto;
}

.max-w-40 {
	max-width: 40px !important;
}

.max-w-50 {
	max-width: 50px !important;
}

.max-w-60 {
	max-width: 60px !important;
}

.max-w-70 {
	max-width: 70px !important;
}

.max-w-80 {
	max-width: 80px !important;
}

.max-w-90 {
	max-width: 90px !important;
}

.max-w-100 {
	max-width: 100px !important;
}

.max-w-110 {
	max-width: 110px !important;
}

.min-w-80 {
	min-width: 80px;
}

.min-w-20 {
	min-width: 20px !important;
}

.mx-w-400 {
	max-width: 400px;
}

.d-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.justify-content-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.d-none {
	display: none;
}

.d-block {
	display: block;
}

.d-inline-block {
	display: inline-block !important;
}

.flex-wraper {
	width: 100%;
}

.form-control {
	display: block;
	width: 100%;
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0.25rem;
	-webkit-transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
	transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
}

.form-select {
	display: block;
	width: 100%;
	padding: .375rem 2.25rem .375rem .75rem;
	-moz-padding-start: calc(0.75rem - 3px);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	background-color: #fff;
}

.page-header,
.page-footer {
	display: table;
	width: 100%;
	z-index: 999;
	-webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
	-ms-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
	-o-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
	position: relative;
	width: 100%;
	min-height: 92px;
	margin: 0;
	padding: 0;
}

.page-footer {
	background: #000;
}

.btn-rounded {
	border-radius: 15px;
	background: #fff;
	border: 1px solid #ccc;
	font-size: 13px;
	min-height: 34px;
}

.btn-rounded:hover,
.btn-rounded:active,
.btn-rounded:focus,
.btn-rounded:visited {
	color: #000;
	border: 1px solid #ccc;
	outline: none !important;
}

.btn-rounded:focus-visible {
	outline: none !important;
}

.btn-rounded .svg-icon {
	max-width: 18px;
}

.btn-outline-primary {
	border: 1px solid #005078;
	color: #005078;
	font-size: 14px;
	font-weight: 600;
	background: #fff;
}

.btn-outline-primary:hover {
	color: #fff;
	background: #005078;
	border: 1px solid #005078;
}

.btn-outline-secondary {
	color: #6c757d;
	background-color: transparent;
	background-image: none;
	border: 1px solid #6c757d;
}

.btn-group-sm>.btn,
.btn-sm {
	padding: .25rem .5rem;
	font-size: .875rem;
	line-height: 1.5;
	border-radius: .2rem;
}

.btn-secondary.dropdown-toggle {
	background: #fff;
	border-color: #D0D0CE;
	border-radius: 0;
	color: #000;
}

.btn-secondary.dropdown-toggle:not(:disabled):not(.disabled).active {
	background: #fff;
	border-color: #D0D0CE;
	border-radius: 0;
	color: #000;
}

.btn-secondary.dropdown-toggle:not(:disabled):not(.disabled):active {
	background: #fff;
	border-color: #D0D0CE;
	border-radius: 0;
	color: #000;
}

.show>.btn-secondary.dropdown-toggle {
	background: #fff;
	border-color: #D0D0CE;
	border-radius: 0;
	color: #000;
}

.gray-bg {
	background: #F9F9F9;
}

button.close {
	padding: 0;
	background-color: transparent;
	border: 0;
}

.close:not(:disabled):not(.disabled) {
	cursor: pointer;
}

.close {
	float: right;
	font-size: 21px;
	font-weight: 700;
	line-height: 1;
	color: #000;
	text-shadow: 0 1px 0 #fff;
	filter: alpha(opacity=20);
	opacity: .2;
}

input:-internal-autofill-selected {
	-webkit-appearance: menulist-button;
	-moz-appearance: menulist-button;
	appearance: menulist-button;
	background-image: none !important;
	background-color: -internal-light-dark(#e8f0fe, rgba(70, 90, 126, 0.4)) !important;
	color: fieldtext !important;
	background: #000;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	font-family: Open Sans !important;
	font-size: 14px;
}

.page-header {
	position: -webkit-sticky;
	position: sticky;
	background: #fff;
	top: 0;
}

.page-header .navbar-collapse {
	-ms-flex-preferred-size: 1;
	flex-basis: 1;
	-webkit-box-flex: unset;
	-ms-flex-positive: unset;
	flex-grow: unset;
	margin-left: auto;
}

.page-header .acl-content {
	padding-left: 0;
	padding-right: 0;
}

.page-header .navbar-nav {
	font-size: 18px;
}

.page-header .navbar-nav .nav-item.active {
	position: relative;
}

.page-header .navbar-nav .nav-item.active .nav-link {
	position: relative;
}

.page-header .navbar-nav .nav-item.active .nav-link::before {
	content: "";
	display: block;
	width: 100%;
	background-color: #000;
	height: 2px;
	position: absolute;
	bottom: 22px;
	height: 2px;
}

.page-header .navbar-nav .nav-link {
	color: #000;
	padding: 1.5em 0em;
	margin: 0 0.8em;
	font-weight: normal;
}

.acl-content {
	max-width: 1200px;
	width: 100%;
	margin: 0px auto;
	padding-left: 4em;
	padding-right: 4em;
	background: transparent;
	color: #000;
	position: relative;
}

.acl-content-sm {
	max-width: 1200px;
	width: 100%;
	margin: 0px auto;
	padding: 2.5em 0em;
	background: transparent;
	color: #000;
	position: relative;
}

.acl-content-sm h2.primary {
	padding-top: 0.4em;
	text-align: center;
}

.acl-header {
	position: relative;
	z-index: 2;
}

.acl-header .acl-content.shadow {
	padding: 3em 2em 0;
	text-align: center;
	background: #fff;
	margin-top: -150px;
}

.acl-header .acl-content.shadow h1,
.acl-header .acl-content.shadow h2 {
	margin-top: 14px;
}

.acl-header .acl-content.shadow h1+p,
.acl-header .acl-content.shadow h2+p {
	width: 81%;
	margin: 24px auto 20px auto;
	font: normal 300 18px Open Sans;
	line-height: 28px;
}

.acl-card {
	box-shadow: 0px 20px 14px 0px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow: 0px 20px 14px 0px rgba(0, 0, 0, 0.08);
	-moz-box-shadow: 0px 20px 14px 0px rgba(0, 0, 0, 0.08);
	padding: 1.8em;
	min-height: 120px;
	background: #fff;
	border-radius: 0;
	border-top: 3px solid #fff;
	border-radius: 15px;
}

.acl-card .card-icon {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	display: inline-block;
	margin-right: 2em;
}

.acl-card img {
	width: 100%;
}

.acl-card h4 {
	margin: 0;
	padding: 0;
}

.acl-card h4 a {
	font-weight: 600;
}

.secondary-btn {
	background: #fff !important;
	color: #005078 !important;
	display: table;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.25px;
	padding: 15px;
	margin: 10px auto;
	border: none;
	font-weight: 600;
	-webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
}

.secondary-btn.wide {
	padding: 15px 30px;
}

.secondary-btn a {
	font-weight: 600;
}

.primary-btn {
	background: #1460AA !important;
	display: table;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.25px;
	padding: 15px;
	border: none;
	color: #fff !important;
	font-weight: 700 !important;
	border-radius: 24px !important;
}

.primary-btn.wide {
	padding: 15px 30px;
}

.primary-btn.rounded {
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	border-radius: 15px;
	padding: 6px 30px;
	font: normal 600 14px Open Sans;
}

.primary-btn.right-aligned {
	margin: 10px 0px 10px auto;
}

.primary-btn a {
	color: #fff !important;
	font-weight: 600;
}

.modal-dialog {
	max-width: 712px;
}

.modal-dialog .modal-header {
	border-bottom: none;
	border-radius: 0;
	padding: 1rem 2rem;
}

.modal-dialog .modal-header h3 {
	position: relative;
	padding-left: 0.6em;
}

.modal-dialog .modal-content {
	border-radius: 0;
}

.modal-dialog .modal-title {
	margin-top: 0.4em;
}

.modal-dialog .modal-body {
	padding: 2rem;
}

.modal-dialog .close {
	font-size: 2rem;
	opacity: 1;
	font-weight: 400;
	padding-top: 1.5rem;
}

.scroll-top {
	text-align: center;
	margin-bottom: 2em;
}

.pipe::before {
	content: "";
	height: 14px;
	width: 0.1em;
	background-color: #b8a890;
	position: absolute;
	top: 8px;
	left: -1px;
}

.hotel-savers hr {
	height: 2px;
	width: 20px;
	background-color: #b8a890;
	margin: 20px auto;
	border: none;
}

.hotel-savers h2 {
	margin-bottom: 20px !important;
	margin-top: -30px;
}

.hotel-savers .h-margin {
	margin-top: 34px !important;
}

.hotel-savers .blue-gradient {
	background: white;
	background: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(45%, #f9fbfc), to(#f0f4f6));
	background: linear-gradient(180deg, white 0%, #f9fbfc 45%, #f0f4f6 100%);
}

.hotel-savers .sky-blue-gradient {
	background: #f0f4f6;
	background: -webkit-gradient(linear, left top, left bottom, from(#f0f4f6), color-stop(25%, #e9f2f8));
	background: linear-gradient(180deg, #f0f4f6 0%, #e9f2f8 25%);
}

.hotel-savers .white-blue-gradient {
	background: white;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(23%, white), to(#e9f2f8));
	background: linear-gradient(180deg, white 23%, #e9f2f8 100%);
}

.hotel-savers .primary-btn {
	padding: 15px 30px;
	margin-top: 30px;
	border-radius: 15px;
}

.hotel-savers .secondary-btn {
	padding: 15px 30px;
}

.hotel-savers .map-filter-btn {
	position: absolute;
	top: -57px;
	width: 100px;
	padding: 0 10px;
	display: none;
}

.hotel-savers .ae-header .ae-content {
	width: 1200px;
}

.hotel-savers .ae-header .ae-content:nth-of-type(2) {
	margin-top: -3em;
	padding-top: 0px;
}

.hotel-savers .ae-header .ae-content h1+p {
	width: 95%;
}

.hotel-savers .shadow {
	-webkit-box-shadow: 0 0px 20px 0 rgba(0, 0, 0, 0.2);
	box-shadow: 0 0px 20px 0 rgba(0, 0, 0, 0.2);
}

.hotel-savers .ac-brand {
	margin-bottom: 33px;
}

.hotel-savers .ac-brand img {
	max-width: 213px;
}

.hotel-savers h2:after {
	height: 2px;
	width: 20px;
	background-color: #b8a890;
	margin: 15px auto 20px;
	border: none;
	display: block;
	/* content: ''; */
	content: none;
}

.hotel-savers .fast-links {
	margin-top: 50px;
}

.hotel-savers .fast-links a {
	padding: 0 5px;
	color: #1460AA;
}

.hotel-savers .fast-links a:hover {
	text-decoration: underline;
}

.hotel-savers .ae-section {
	margin-top: 10px;
	text-align: center;
}

.hotel-savers .ae-section.how-works {
	padding: 20px;
}

.hotel-savers .ae-section.how-works .ae-content {
	padding: 0 8em;
}

.hotel-savers .ae-section.how-works h2 {
	margin-top: -20px;
}

.hotel-savers .ae-section p {
	font: normal 400 14px Open Sans;
}

.hotel-savers .ae-section .ae-content {
	padding: 4em;
}

.hotel-savers .ae-card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-shadow: 0 0 20px 0 RGB(0 0 0/20%);
	box-shadow: 0 0 20px 0 RGB(0 0 0/20%);
	margin-bottom: 20px;
}

.hotel-savers .hotel-category {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-shadow: 0 0 20px 0 RGB(0 0 0/20%);
	box-shadow: 0 0 20px 0 RGB(0 0 0/20%);
	margin-bottom: 20px;
	margin-top: 60px;
	border-radius: 15px;
}

.hotel-savers .hotel-category .hotel-view {
	padding: 20px;
	max-width: 60%;
}

.hotel-savers .hotel-category .hotel-view img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.hotel-savers .hotel-category .hotel-grid {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	border-left: 2px solid #e6e5e5;
}

.hotel-savers .hotel-category .hotel-grid .ae-col {
	min-width: 50%;
}

.hotel-savers .hotel-category .hotel-grid .ae-col:first-child {
	border-right: 2px solid #e6e5e5;
}

.hotel-savers .hotel-category .hotel-grid .ae-col .col-head {
	background: #f6f6f5;
	padding: 15px 10px;
	min-height: 65px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.hotel-savers .hotel-category .hotel-grid .ae-col>div {
	padding: 6px 0px;
}

.hotel-savers .flex-wraper {
	width: 100%;
	padding: 50px;
}

.hotel-savers .our-partners {
	width: 100%;
}

.hotel-savers .our-partners .ae-card {
	background: #fff;
	border-radius: 15px;
}

.hotel-savers .our-partners .partners {
	padding: 35px 20px;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 0px;
}

.hotel-savers .our-partners hr {
	width: 100%;
	margin: 20px 0px;
	background: #8a8383;
	height: 2px;
	opacity: 0.1;
}

.hotel-savers .our-partners .hotel-type {
	min-width: 15%;
	text-align: left;
	font-size: 16px;
	font-weight: 600;
}

.hotel-savers .our-partners .hotel-thumb {
	text-align: center;
	width: 100%;
}

.hotel-savers .our-partners .hotel-thumb img {
	max-width: 130px;
	min-width: 40px;
	vertical-align: middle;
}

.hotel-savers .our-partners .hotel-thumb .col-xs-4 {
	min-height: 95px;
}

.hotel-savers .our-partners .hotel-thumb .max-30 {
	max-width: 30px;
}

.hotel-savers .our-partners .hotel-thumb .row+.row {
	margin-top: 25px;
}

.hotel-savers .ac-map {
	margin-top: 55px;
}

.hotel-savers .ac-map .search .search-bar {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.hotel-savers .ac-map .search .search-bar>.flex-item {
	width: 49%;
}

.hotel-savers .ac-map .search .search-bar .filter-col {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.hotel-savers .ac-map .search .search-bar .filter-col .flex-item {
	width: 30%;
}

.hotel-savers .ac-map .search .search-bar .filter-col .mobile-header,
.hotel-savers .ac-map .search .search-bar .filter-col .mobile-footer {
	display: none;
}

.hotel-savers .ac-map .search .search-bar .input-wraper .form-control {
	height: 40px;
	-webkit-box-shadow: none;
	box-shadow: none;
	border-radius: 0;
}

.hotel-savers .ac-map .search .search-bar .input-wraper .clear {
	position: absolute;
	top: 2px;
	right: 2px;
	width: 40px;
	height: 35px;
	background: #f5f5f5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	z-index: 9;
	display: none;
	cursor: pointer;
}

.hotel-savers .ac-map .search .search-bar .input-wraper:hover .clear {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.hotel-savers .featured-hotels .hotel-card {
	text-align: center;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	border-radius: 15px;
}

.hotel-savers .featured-hotels .hotel-details {
	padding: 20px 20px 0;
	min-height: 102px;
}

.hotel-savers .flexible-booking {
	padding-top: 30px;
	background: #f9f9f9;
}

.hotel-savers .flexible-booking .card {
	text-align: center;
	border: none;
	margin-top: 40px;
}

.hotel-savers .flexible-booking .card .img-wrap {
	max-width: 110px;
	margin: 0 auto;
	margin-bottom: 30px;
}

.hotel-savers .purchase_Points .card {
	border: none;
	-webkit-box-shadow: 0 6px 4px 0 rgba(0, 0, 0, 0.1);
	box-shadow: 0 6px 4px 0 rgba(0, 0, 0, 0.1);
}

.hotel-savers .purchase_Points .points-banner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px;
}

.hotel-savers .purchase_Points .points-banner .banner-copy {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: end;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	padding: 0 100px 20px 30px;
}

.hotel-savers .purchase_Points .points-banner .banner-copy .btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: left;
	-ms-flex-pack: left;
	justify-content: left;
	width: 100%;
}

.hotel-savers .purchase_Points .points-banner .banner-copy .btn-wrap .primary-btn {
	display: inline-block;
	margin: 0;
}

.hotel-savers .purchase_Points .points-banner .banner-copy h2::after {
	height: 0;
	display: none;
}

.hotel-savers .purchase_Points .points-banner .img-wrap {
	max-width: 35%;
}

.relative {
	position: relative;
}

.overlay {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	width: 100%;
	height: 100vh;
	background: #fff;
	opacity: 0.8;
	z-index: 999;
	display: none;
}

.loader {
	background: url("/content/dam/aircanada/trp-map/images/icon/Loader_v3.svg");
	width: 120px;
	height: 120px;
	-webkit-animation: rotation 8s infinite linear;
	animation: rotation 8s infinite linear;
}

.clusterMarker-label {
	display: inline-block;
	margin-top: -10px;
	font-family: Open Sans !important;
	font-weight: 600;
}

.map-intro {
	padding: 1.8em;
}

.noselect {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.dropdown-container,
.instructions {
	width: 200px;
	margin: 20px auto 0;
	font-size: 14px;
	font-family: sans-serif;
}

.instructions {
	width: 100%;
	text-align: center;
}

.dropdown-button {
	float: left;
	width: 100%;
	background: whitesmoke;
	padding: 10px 12px;
	cursor: pointer;
	border: 1px solid lightgray;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.dropdown-button .dropdown-label,
.dropdown-button .dropdown-quantity {
	float: left;
}

.dropdown-button .dropdown-quantity {
	margin-left: 4px;
}

.dropdown-button .fa-filter {
	float: right;
}

.dropdown-list {
	float: left;
	width: 100%;
	border: 1px solid lightgray;
	border-top: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px 12px;
}

.dropdown-list input[type="search"] {
	padding: 5px 0;
}

.dropdown-list ul {
	margin: 10px 0;
	max-height: 200px;
	overflow-y: auto;
}

.dropdown-list ul input[type="checkbox"] {
	position: relative;
	top: 2px;
}

@-webkit-keyframes rotation {
	from {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}

@keyframes rotation {
	from {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}

.multiselect-dropdown {
	display: inline-block;
	padding: .375rem 2.25rem .375rem .75rem;
	border-radius: 4px;
	border: solid 1px #ced4da;
	background-color: white;
	position: relative;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .75rem center;
	background-size: 16px 12px;
}

.multiselect-dropdown span.optext,
.multiselect-dropdown span.placeholder {
	margin-right: 0.5em;
	margin-bottom: 2px;
	padding: 1px 0;
	border-radius: 4px;
	display: inline-block;
}

.multiselect-dropdown span.optext {
	background-color: lightgray;
	padding: 1px 0.75em;
	max-width: 99%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.multiselect-dropdown span.optext .optdel {
	float: right;
	margin: 0 -6px 1px 5px;
	font-size: 0.7em;
	margin-top: 2px;
	cursor: pointer;
	color: #666;
}

.multiselect-dropdown span.optext .optdel:hover {
	color: #c66;
}

.multiselect-dropdown span.placeholder {
	color: #ced4da;
}

.multiselect-dropdown-list-wrapper {
	-webkit-box-shadow: gray 0 3px 8px;
	box-shadow: gray 0 3px 8px;
	z-index: 100;
	padding: 15px;
	border-radius: 4px;
	border: solid 1px #ced4da;
	display: none;
	margin: -1px;
	position: absolute;
	top: 40px;
	left: 0;
	right: 0;
	background: white;
	overflow: hidden;
}

.multiselect-list-item input[type='checkbox'] {
	margin-right: 0.2rem;
	background-color: #caca4c;
}

.placeholder {
	background-color: transparent;
}

input[type="checkbox"]:checked {
	background-color: #caca4c !important;
	color: white;
}

.star-rating {
	position: relative;
	min-height: auto;
}

.star-rating label {
	margin-bottom: 0;
	font-weight: 400;
}

.star-rating input:checked+label {
	color: #fff;
}

.star-rating input:checked+label:after {
	content: '';
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: #005078;
	z-index: -1;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before {
	background-color: green !important;
}

.custom-checkbox .custom-control-input:checked:focus~.custom-control-label::before {
	-webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 255, 0, 0.25);
	box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 255, 0, 0.25);
}

.custom-checkbox .custom-control-input:focus~.custom-control-label::before {
	-webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
	box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
}

.custom-checkbox .custom-control-input:active~.custom-control-label::before {
	background-color: #C8FFC8;
}

.my-label-class {
	background: #fff;
	border-radius: 4px;
}

.test div[aria-label] {
	font-weight: 700;
	margin-top: 5px;
}

.pac-container {
	width: 100%;
	max-height: 170px;
	display: none;
	padding: 10px;
	padding-bottom: 0;
}

.pac-container .clear-pred {
	text-align: right;
	font-size: 14px;
	font-weight: normal;
	margin: 5px;
	position: relative;
}

.pac-container .clear-pred .fa {
	position: absolute;
	top: -5px;
	right: -5px;
	cursor: pointer;
	font-size: 18px;
}

.pac-container .pac-item {
	cursor: pointer;
	border-top: 0;
	border-bottom: 1px solid #e6e6e6;
}

.pas-property {
	background: url("/content/dam/aircanada/trp-map/images/icons/h-icon.jpg");
	width: 14px;
	height: 14px;
	margin-right: 7px;
	margin-top: 6px;
}

.disabled {
	opacity: 0.8;
}

.gm-style .gm-style-iw-c {
	overflow: visible;
	min-width: 290px !important;
	border-radius: 2px;
	outline: none;
}

.gm-style .gm-style-iw-c::before {
	content: '';
	background-image: url("/content/dam/aircanada/loyalty-content/images/hotel-savers/ribbon.svg");
	width: 127px;
	height: 46px;
	position: absolute;
	top: 4px;
	left: -10px;
}

.info-category {
	position: absolute;
	top: 30px;
	left: 18px;
	font-size: 12px;
	font-weight: 400;
}

.ribbon4 {
	position: absolute;
	top: 10px;
	font-weight: 400;
	color: #fff;
}

.category-pts {
	margin-bottom: 10px;
	display: inline-block;
	font-weight: 500;
}

.category-pts .pts {
	font-size: 14px;
}

.marker-address {
	font-weight: 500;
}

.acMaplabel {
	margin-top: 45px;
}

.acMaplabel .info-star-rating {
	font-size: 16px;
	color: #005078;
	margin: 5px 0 10px;
}

.acMaplabel .info-star-rating label {
	margin-right: 5px;
	display: inline-block;
}

.acMaplabel h2 {
	font-size: 16px;
	margin: 0 !important;
	min-width: 260px;
}

.acMaplabel h2::after {
	height: 0px;
	display: none !important;
}

.acMaplabel h2 p {
	font-size: 14px;
}

.multiselect-dropdown {
	display: inline-block;
	padding: 0px;
	height: 38px;
	border-radius: 60px;
	border: solid 1px #ced4da;
	background-color: white;
	position: relative;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .75rem center;
	background-size: 16px 12px;
	font-size: 13px;
}

.multiselect-dropdown span.optext,
.multiselect-dropdown span.placeholder {
	margin-right: 0.5em;
	margin-bottom: 2px;
	padding: 6px 13px;
	border-radius: 60px;
	display: inline-block;
	height: 38px;
	font-weight: 700;
	width: 100%;
	cursor: pointer;
}

.multiselect-dropdown span.placeholder {
	max-width: 96%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.multiselect-dropdown span.ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: inline-block;
}

.multiselect-dropdown span.optext {
	background-color: #deedf5;
	width: 100%;
	-webkit-box-shadow: 0 3px 10px 1px #0003;
	box-shadow: 0 3px 10px 1px #0003;
	font-weight: 600;
	color: #125b82;
	font-size: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.multiselect-dropdown span.optext .optdel {
	margin: 0 -6px 1px 5px;
	font-size: 0.7em;
	margin-top: 2px;
	cursor: pointer;
	color: #666;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	text-align: right;
}

.multiselect-dropdown span.optext .optdel:hover {
	color: #c66;
}

.multiselect-dropdown span.placeholder {
	color: #000;
	opacity: 0.8;
	font-size: 1.03rem;
	font-weight: 600;
}

.multiselect-dropdown-list-wrapper {
	-webkit-box-shadow: gray 0 3px 8px;
	box-shadow: gray 0 3px 8px;
	z-index: 100;
	padding: 0.8rem 1rem;
	border-radius: 4px;
	border: solid 1px #ced4da;
	display: none;
	margin: -1px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: white;
	width: 300px;
}

.multiselect-dropdown-list-wrapper h3 {
	font-size: 16px;
}

.multiselect-dropdown-list-wrapper .multiselect-dropdown-search {
	margin-bottom: 5px;
}

.multiselect-dropdown-list {
	padding: 2px;
	height: 15rem;
	overflow-y: auto;
	overflow-x: hidden;
}

.multiselect-dropdown-list.d-flex {
	height: auto !important;
}

.multiselect-dropdown-list::-webkit-scrollbar {
	width: 6px;
}

.multiselect-dropdown-list::-webkit-scrollbar-thumb {
	background-color: #bec4ca;
	border-radius: 3px;
}

.multiselect-dropdown-list div {
	padding: 5px;
}

.multiselect-dropdown-list input {
	height: 1.15em;
	width: 1.15em;
	margin-right: 0.35em;
}

.multiselect-dropdown-list div .star-rating {
	cursor: pointer;
}

.multiselect-dropdown-list div .star-rating:focus {
	background: #fff;
	color: #6c757d;
}

.multiselect-dropdown-list div .star-rating:hover {
	background: #fff;
	color: #6c757d;
}

.multiselect-dropdown-list div.checked .star-rating {
	background: #125b82;
	color: #6c757d;
}

.multiselect-dropdown-list div.checked .star-rating:hover {
	color: #fff;
	background: #125b82;
}

.multiselect-dropdown span.maxselected {
	width: 100%;
	border: 60px;
	height: 38px;
	border-radius: 60px;
	padding: 7px 10px;
}

.multiselect-dropdown-all-selector {
	padding: 0;
	cursor: pointer;
}

.multiselect-dropdown-list div.multiselect-dropdown-all-selector:hover {
	background-color: transparent;
}

.multiselect-dropdown-all-selector .btn-link {
	padding: 0;
	color: #005078;
	min-height: auto;
}

.custom-checkbox input {
	display: none;
}

.custom-checkbox label {
	position: relative;
	cursor: pointer;
	font-weight: 600;
}

.custom-checkbox label span {
	Opacity: 0.6;
}

.custom-checkbox label:before {
	content: '';
	-webkit-appearance: none;
	background-color: transparent;
	position: relative;
	vertical-align: middle;
	cursor: pointer;
	margin-right: 5px;
	background-image: url("/content/dam/aircanada/trp-map/images/icons/check-off.png");
	width: 18px;
	height: 18px;
	display: inline-block;
}

.custom-checkbox input:checked+label:after {
	content: '';
	display: block;
	position: absolute;
	background-image: url("/content/dam/aircanada/trp-map/images/icons/checked.png");
	width: 20px;
	height: 20px;
	top: 1px;
	left: 0;
}

.points {
	margin-left: 15px;
	display: inline-block;
	opacity: 0.7;
}

.ae-header h1 {
	font-weight: 700;
}

.hotel-savers h2 {
	font-weight: 700;
}

.fi-banner div:nth-of-type(2) p.fi-cta a {
	background: #1460AA !important;
	border-radius: 24px !important;
	font-weight: 700 !important;
}

.hotel-savers .purchase_Points .points-banner .banner-copy .btn-wrap .primary-btn {
	background: #1460AA !important;
	border-radius: 24px !important;
	font-weight: 700 !important;
}

span.divider {
	color: #C9CACC;
}

/* AE registration start */
.col-flex-30.white-panel.registeration-box {
	margin: 0px;
}

.registration-flex-container {
	display: flex;
	gap: 2%;
}

.col-flex-70 {
	width: 64%;
}

.col-flex-30.white-panel.registeration-box {
	width: 34%;
}

.registration-steps {
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.step {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 48%;
	gap: 2%;
	padding: 12px;
}

.steps-img img {
	width: 100%;
}

.steps-img {
	max-width: 140px;
	/* width: 100%; */
}

.steps-description h4 {
	font: normal 600 14px Open Sans;
	margin-top: 16px;
	/* line-height: 22px; */
}

.steps-description h3 {
	font: normal 700 24px Open Sans;
}

.steps-description a {
	text-decoration: none;
	font-size: 16px;
	font-weight: 700;
	color: #1460AA;
}

.pill-red {
	border-radius: 13px;
	background-color: #D8292F;
	text-transform: uppercase;
	padding: 5px 15px;
	font: normal 600 12px Open Sans !important;
	color: #fff;
	letter-spacing: 0.2px;
	display: inline-block;
	margin-bottom: 48px;
	text-align: left;
	margin-left: auto;
}

.check-in, 
.bf-plane {
	display: flex;
	align-items: center;
	gap: 12px;
}

.check-in p, 
.bf-plane p {
	margin: 0;
}

.dates {
	display: flex;
	flex-direction: column;
	gap: 12px;
	justify-content: flex-start;
}

.registration-text-top {
	margin-bottom: 32px;
}

#acDbaasAeroplanNumberError,
#acDbaasRulesCheckError {
	color: #f01428;
	text-align: left;
	font-weight: 600;
}

#acDbaasAeroplanNumber {
	background-color: #fff;
	border-bottom: 1px solid #d0d0ce;
	color: #737373;
	font-size: 16px;
	padding-left: 0px;
}

#acDbaasAeroplanNumber::placeholder {
	font-weight: 600;
}

#acDbaasRulesCheck {
	width: 16px;
	height: 16px;
	background-color: #000;
	cursor: pointer;
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 3px 3px 3px 4px;
	padding: initial;
	border: initial;
	opacity: 1;
	position: relative;
}

.not-a-member {
	text-align: center;
	margin-top: 35px;
	font-size: 16px;
}

.white-panel #acDbaasRegisterForm .ae-form-logo {
	padding-bottom: 2%;
	max-width: 188px;
	margin: 0 auto;
	margin-top: 30px;
	display: block;
}

#acDbaasRegisterForm .ac-form a {
	color: #1460AA;
}

.registered {
	text-align: center;
}

.hidden {
	display: none !important;
	visibility: hidden !important;
}

#acDbaasRulesCheckError {
	color: #f01428;
	text-align: left;
	font-weight: 600;
}
/* AE registration end */

/* big landscape tablets, laptops, and desktops */
@media only screen and (max-width: 1180px) {
	.hotel-savers .hotel-category .hotel-grid .ae-col .col-head {
		min-height: 80px;
	}

	#starRating+.multiselect-dropdown .multiselect-dropdown-list-wrapper {
		left: auto;
		right: 0;
	}
}

@media only screen and (max-width: 1024px) {
	.trp .ae-content {
		padding: 4em 25px;
	}

	.trp .ae-header .ae-content:nth-of-type(1) {
		padding-bottom: 0px;
		width: 96%;
	}

	.trp .ae-header .ae-content:nth-of-type(2) {
		margin-top: 0px;
	}

	.trp .ae-header .ae-content h1 {
		width: 80%;
		margin: auto;
	}

	.trp .ae-header .ae-content h1+p {
		width: 100%;
	}

	.trp .shadow {
		-webkit-box-shadow: 0 -15px 20px 0 rgba(0, 0, 0, 0.12);
		box-shadow: 0 -15px 20px 0 rgba(0, 0, 0, 0.12);
	}

	.hotel-savers .flex-wraper {
		padding-top: 0;
	}

	.hotel-savers .our-partners .partners {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.hotel-savers .our-partners .hotel-type {
		text-align: center;
	}

	.hotel-savers .our-partners .hotel-type div {
		display: inline-block;
	}

	.hotel-savers .our-partners .hotel-thumb {
		margin-top: 20px;
	}

	.hotel-savers .our-partners .hotel-thumb img {
		max-width: 50px;
	}

	.hotel-savers .ac-map .search .search-bar .filter-col .flex-item {
		width: 32%;
	}

	.multiselect-dropdown span.placeholder {
		font-size: 0.9rem !important;
	}

	.hotel-savers .featured-hotels .hotel-details {
		min-height: 127px !important;
	}
}

@media only screen and (max-width: 900px) {
	.hotel-savers .hotel-category {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.hotel-savers .hotel-category .hotel-view {
		max-width: 100%;
	}

	.hotel-savers .featured-hotels .hotel-card {
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
		min-height: 320px;
	}

	#categories+.multiselect-dropdown .multiselect-dropdown-list-wrapper {
		left: auto;
		right: 0;
	}

	.hotel-savers .featured-hotels .hotel-details {
		min-height: 102px;
	}
}

@media only screen and (max-width: 815px) {
	.optext {
		display: none !important;
	}

	.hotel-savers .map-filter-btn {
		display: block;
	}

	.hotel-savers .ac-map .search .search-bar .filter-col {
		display: block;
		width: 100vw;
		height: 100vh;
		background: #fff;
		border: 2px solid #000;
		position: fixed;
		top: 0;
		z-index: 999;
	}

	.hotel-savers .ac-map .search .search-bar .flex-item {
		width: 100%;
	}

	.hotel-savers .our-partners .hotel-thumb img {
		max-width: 70px;
	}

	#mobileFilters {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 999;
		width: 100%;
		background-color: #fff;
		display: none;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		border: 0;
		overflow: auto;
	}

	#mobileFilters .flex-item:nth-child(2) {
		-webkit-box-ordinal-group: 4;
		-ms-flex-order: 3;
		order: 3;
	}

	#mobileFilters .flex-item:nth-child(2) .multiselect-dropdown-list {
		max-height: 25rem;
		overflow: none;
	}

	#mobileFilters .multiselect-dropdown {
		display: table;
		border-radius: 0;
		border: 0;
		background: none;
	}

	#mobileFilters .multiselect-dropdown-list-wrapper {
		display: block !important;
		position: static !important;
		-webkit-box-shadow: none !important;
		box-shadow: none !important;
		border-radius: 0;
		border: 0;
		border-bottom: 1px solid #ece8e8;
	}

	#mobileFilters .multiselect-dropdown-list {
		height: 100% !important;
	}

	#mobileFilters .multiselect-dropdown-list-wrapper h3 {
		font-size: 12px;
		margin: 4px;
	}

	#mobileFilters .multiselect-dropdown-list div {
		font-size: 12px;
		padding: 6px 5px;
	}

	#mobileFilters .ac-map .search .form-control {
		height: 30px !important;
		margin-bottom: 0 !important;
	}

	#mobileFilters .multiselect-dropdown-all-selector .btn-link {
		margin-bottom: 0;
	}

	#mobileFilters .multiselect-dropdown span.optext,
	#mobileFilters .multiselect-dropdown span.placeholder {
		display: none;
	}

	#mobileFilters .custom-checkbox label {
		font-weight: 600;
	}

	#mobileFilters .custom-checkbox label:before {
		width: 12px;
		height: 12px;
		background-size: contain;
	}

	#mobileFilters .custom-checkbox input:checked+label:after {
		width: 12px;
		height: 12px;
		background-size: contain;
		top: 4px;
	}

	#mobileFilters .mobile-footer {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		width: 300px;
		-webkit-box-align: baseline;
		-ms-flex-align: baseline;
		align-items: baseline;
		position: fixed;
		bottom: 0;
		background: #fff;
	}

	#mobileFilters .mobile-header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-size: 12px;
		margin: 5px 12px;
		max-width: 300px;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	#mobileFilters.on {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		z-index: 1000;
	}

	#mobileFilters.on .modal-body {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
	}
}

@media only screen and (max-width: 767px) {
	.ae-header img {
		min-height: 92px;
	}

	.hotel-savers .ac-brand {
		margin-bottom: 0;
	}

	.registration-flex-container {
		flex-direction: column;
	}

	.col-flex-70,
	.col-flex-30.white-panel.registeration-box {
		width: 100%;
	}

	.col-flex-30.white-panel.registeration-box {
		margin-top: 32px;
	}

	.registration-text-top {
		text-align: left;
	}
	
	.registration-steps {
		flex-direction: column;
	}

	div.step {
		width: 100%;
		flex-direction: row;
		text-align: left;
	}

	#registration .ae-content {
		padding: 0;
	}

	.steps-description {
		width: 68%;
		margin-left: 8px;
	}

	.steps-img {
		max-width: none;	
		width: 40%;
	}
}

@media only screen and (max-width: 599px) and (min-width: 320px) {
	.trp .ae-header .ae-content:nth-of-type(1) {
		width: 87%;
	}

	.hotel-savers h2 {
		width: 100%;
	}

	.hotel-savers .ae-section.our-partners,
	.hotel-savers .ae-section.flexible-booking {
		padding: 30px;
	}

	.hotel-savers .ae-section.featured-hotels {
		padding-bottom: 20px;
	}

	.hotel-savers .our-partners .partners {
		padding-top: 0;
	}

	.xs-max-width-60 {
		max-width: 60px !important;
	}

	.hotel-savers .ae-section.how-works .ae-content,
	.hotel-savers .ae-section.our-partners .ae-content,
	.purchase_Points .ae-content {
		padding: 0;
		width: 100%;
	}

	.hotel-savers .flex-wraper {
		padding: 30px 0;
	}

	.hotel-savers .purchase_Points .points-banner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		padding-top: 40px;
	}

	.hotel-savers .our-partners .hotel-thumb img {
		max-width: 60px;
		margin-bottom: 20px;
		margin-top: 20px;
	}

	.hotel-savers .purchase_Points .points-banner .banner-copy {
		padding: 20px;
	}

	.hotel-savers .purchase_Points .points-banner .img-wrap {
		width: 100%;
		max-width: 100%;
	}

	.hotel-savers .hotel-category .hotel-grid .ae-col {
		padding-bottom: 10px;
	}

	.hotel-savers .purchase_Points .points-banner .banner-copy .btn-wrap {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.center-xs {
		width: 100%;
		text-align: center !important;
	}

	.hotel-savers .ac-brand {
		margin-bottom: 0;
	}

	.ae-header img {
		min-height: 92px;
	}
}

/* @media only screen and (max-width: 900px){
    .cluster{
        img{
            width: 38px;
            height: 50px;
            clip: rect(0px, 37px, 51px, 0px)!important;
        }
        

        div[aria-label]{
            margin-top: 10px;
            width: 38px;
            top:6px;
            left:7px;
        }
    }
} */
/*# sourceMappingURL=style.css.map */