img {
	max-width: 100%;
}

body #wrapper {padding-top: 0;}

#membership-top-block {
	background-size: cover;
	background-repeat: no-repeat;
	/*margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50.8%);*/
}

#membership-top-block .container{
	position: relative;
}

.membership-top-block-container {
	width: 55%;
	right: 0;
	color: #000;
	position: absolute;
	margin-top: 8vh;
}

.membership-block-bg {
    width: 100%;
    height: 100%;
    background: #fff url(../img/pattern1.png) center center repeat;
    top: 32px;
    right: -34px;
    position: absolute;
    border-radius: 6px;
    display: inline-block;
    -webkit-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
}

.membership-top-block-contents {
	background-color: #fff;
	border-radius: 6px;
	padding:3.5rem;
	position: relative;
	-webkit-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.3);
}

.membership-top-block-contents h2{
	font-size: 2rem;
	font-weight: 500;
	line-height: 42px;
	margin-bottom: 1rem;
}

.membership-top-block-contents p{
	color: #000;
	font-size: 1.1rem;
	line-height: 25px;
}

.membership-benefits-block{
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	padding: 40px;
	margin-top: 8vh;
	margin-bottom: 8vh;
}

.membership-benefits-block ul li {
	display: flex;
	margin-bottom: 26px;
}

.membership-benefits-block .list-num {
	font-size: 2.5rem;
	font-weight: 800;
	margin-right: 22px;
	padding-top: 4px;
}

.membership-benefits-block ul {
	margin-bottom: 0;
}

.membership-benefits-block ul li .h3 {
	text-transform: none;
	color: #000;
}

.membership-benefits-block ul li .listing-subtitle {
	color: #000;
	margin-bottom: 0;
	padding-top: 5px;
	line-height: 22px;
}

.membership-faq-left {
	margin-top: 15vh;
	margin-bottom: 30vh;
}

.membership-faq-left .membership-benefits-block-left-title{
	font-size: 2rem;
	font-weight: 500;
	padding-bottom: 12px;
	line-height: 42px;
}

.membership-benefits-block-left-subtitle {
	color: #000;
    line-height: 28px;
    font-size: 1.2rem;
}

#membership-mid-block-steps {
	background-color: #000;
	padding-top: 55px;
	padding-bottom: 50px;
	/*margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50.8%);*/
}

#membership-mid-block-steps .top-elements{
	text-align: center;
}

#membership-mid-block-steps .top-elements .title{
	color: #fff;
	font-size: 2.5rem;
	font-weight: 500;
	padding-bottom: 12px;
	text-transform: uppercase;
}

#membership-mid-block-steps .top-elements .subtitle{
	color: #fff;
	font-size: 1rem;
	margin-bottom: 1.5rem;
	line-height: 30px;
}

.steps-elements-contents {
	background-color: #fff;
	padding: 32px;
	margin-bottom: 30px;
}

#steps-elements-block ul {
	margin-bottom: 0;
}

#steps-elements-block ul li .contents{
	display: flex;
}

#steps-elements-block ul li .contents .list-num {
	font-size: 2.5rem;
	font-weight: 600;
	margin-right: 25px;
	margin-top: 6px;
}

#steps-elements-block ul li .contents .listing-title {
	text-transform: none;
	margin-bottom: 0;
}

#steps-elements-block ul li .contents .listing-subtitle {
	color: #000;
	padding-top: 6px;
	margin-bottom: 0;
	line-height: 22px;
}

#membership-register {
	text-align: center;
    margin-top: 48px;
    margin-bottom: 80px;
    position: relative;
}

.membership-faq-right {
	margin-top: 15vh;
	margin-bottom: 10vh;
    width: 100%;
    float: right;
}


#membership-mid-block, #membership-bottom-block {
	position: relative;
}

.membership-landingPattern {
    background-image: url(../img/pattern1.png);
    background-position: center center;
    background-repeat: repeat;
    position: absolute;
    width: 44%;
    left: 0;
    height: 100%;
    background-size: initial;
}

.mmbp-btn {
	border: 2px solid #000;
	width: 48%;
	text-align: center;
	padding: 16px;
	cursor: pointer;
  	display: inline-block;
  	position: relative;
  	transition: all 0.5s;
}

.mmbp-btn.black-bg {
	background-color: #000;
	color: #fff;
	margin-right: 5px;
}

.mmbp-btn.black-bg:after {
	content: '\f178';
  	position: absolute;
  	color: #fff;
  	opacity: 0;  
  	font-size: 1.4rem;
  	top: 17px;
  	right: -20px;
  	transition: 0.5s;
  	font-family: 'FontAwesome';
}

.mmbp-btn.white-bg:after {
	content: '\f178';
  	position: absolute;
  	color: #000;
  	opacity: 0;  
  	font-size: 1.4rem;
  	top: 17px;
  	right: -20px;
  	transition: 0.5s;
  	font-family: 'FontAwesome';
}

.mmbp-btn.white-bg:hover{
	color: #000 !important;
  	padding-right: 24px;
  	padding-left:8px;
}

.mmbp-btn.black-bg:hover{
	color: #fff !important;
  	padding-right: 24px;
  	padding-left:8px;
}

.mmbp-btn.black-bg:hover:after {
  opacity: 1;
  right: 33px;
}

.mmbp-btn.white-bg:hover:after {
  opacity: 1;
  right: 33px;
}
.mmbp-btn.white-bg {
	color: #000;
	margin-left: 5px;
}

.view_membership_page_block {
	margin: auto;
    text-align: center;
}

.view_membership_page_block .view_membership_btn {
	margin-top: 30px;
    margin-bottom: 30px;
}

#module-cm_membership-membership footer {padding-top: 0;}
#module-cm_membership-membership #wrapper {margin-bottom: -24px;}

.mmbp-rewards-benefits {
	text-align: center;
	margin-top: 4rem;
}

.mmbp-rewards-benefits .mmbp-rewards-title{
	font-weight: 600;
	color: #000;
	font-size: 1.2rem;
	padding-top: 1.1rem;
	text-align: center;
}

.mmbp-rewards-benefits .mmbp-rewards-desc {
	color: #000;
	font-weight: 1.3rem;
}

.mmbp-rewards-benefits .button, 
.mmbp-partner-offers .button {
	position: absolute;
	cursor: pointer;
  	left: 50%;
  	top: 50%;
  	transform: translateX(-50%) translateY(-50%);
  	background: #fff;
  	width: auto;
  	padding: 6px 50px;
  	border: 1px solid #000;
  	color: #000;
  	text-align:center;
  	z-index: 2;
    transition: 0.45s;
}

#partner-offers-page .button {
	position: relative;
	cursor: pointer;
  	left: 5px;
  	width: 220px;
  	background: #fff;
  	padding: 6px 50px;
  	border: 1px solid #000;
  	color: #000;
  	text-align:center;
  	z-index: 2;
    transition: 0.45s;
}

#membership-register .button {
	position: absolute;
	cursor: pointer;
  	left: 50%;
  	top: -8px;
  	transform: translateX(-50%) translateY(-50%);
  	background: #000;
  	width: auto;
  	padding: 6px 50px;
  	border: 1px solid #000;
  	color: #fff;
  	text-align:center;
  	z-index: 2;
    transition: 0.45s;
}

.mmbp-rewards-benefits .button:after,
.mmbp-rewards-benefits .button:before,
.mmbp-partner-offers .button:after,
.mmbp-partner-offers .button:before,
#partner-offers-page .button:after,
#partner-offers-page .button:before {
    position: absolute;
    width: 100%;
    max-width: 100%;
    top: 100%;
    right: 0;
    bottom: -10px;
    content: '';
    z-index: 1;
    transition: 0.45s;
}

#membership-register .button:after,
#membership-register .button:before {
    position: absolute;
    width: 100%;
    max-width: 100%;
    top: 100%;
    right: 0;
    bottom: -10px;
    content: '';
    z-index: 1;
    transition: 0.45s;
}

.mmbp-rewards-benefits .button:before, 
.mmbp-partner-offers .button:before,
#partner-offers-page .button:before {
    background: #000;
    top: 10px;
    right: -11px;
    height: 100%;
    width: 10px;
}

#membership-register .button:before, 
#membership-register .button:before {
    top: 10px;
    right: -10px;
    height: 100%;
    width: 10px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
}

.mmbp-rewards-benefits .button:after,
.mmbp-partner-offers .button:after,
#partner-offers-page .button:after {
    width:100%;
    background: #000;
    right: -10px;
    height: 10px;
}

#membership-register .button:after {
    width: 100%;
    right: -10px;
    height: 10px;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
}

.mmbp-rewards-benefits .button:hover,
.mmbp-partner-offers .button:hover,
#partner-offers-page .button:hover {
    background: #000;
   	color: #fff;
    margin-left: -7.5px;
    margin-bottom: -7.5px;
}

#membership-register .button:hover {
    background: #fff;
   	color: #000;
    margin-left: -7.5px;
    margin-bottom: -7.5px;
}

.mmbp-rewards-benefits .button:hover:after,
.mmbp-rewards-benefits .button:hover:before,
.mmbp-partner-offers .button:hover:after,
.mmbp-partner-offers .button:hover:before,
#partner-offers-page .button:hover:after,
#partner-offers-page .button:hover:before {
    top: 100%;
    right: 0;
    bottom: 0px;
}

#membership-register .button:hover:after,
#membership-register .button:hover:before {
    top: 100%;
    right: 0;
    bottom: 0px;
}

.mmbp-rewards-benefits .button:hover:before,
.mmbp-partner-offers .button:hover:before,
#partner-offers-page .button:hover:before {
    top: 0px;
    right: 0px;
    width: 0px;
}

#membership-register .button:hover:before {
    top: 0px;
    right: -1px;
    width: 0px;
}

.mmbp-rewards-benefits .button:hover:after,
.mmbp-partner-offers .button:hover:after,
#partner-offers-page .button:hover:after {
    right: 0px;
    height: 0px;
}

#membership-register .button:hover:after {
    right: 0px;
    height: 0px;
}

.mmbp-rewards-benefits-block-btn {
	position: relative;
    display: block;
    margin-top: 70px;
    margin-bottom: 100px;
}

.mmbp-rewards-benefits h2, .mmbp-partner-offers h2 {
	text-transform: uppercase;
	margin-bottom: 2rem;
	text-align: center;
}

.mmbp-partner-offers .block_container {
	position: relative;
	transition: .8s ease;
}

.mmbp-partner-offers .block_overlay {
	position: absolute;
	bottom: -97px;
	left: 0;
	right: 0;
	background-color: rgba(0,0,0,1);
	transition: .8s ease;
	height: 115px;
	overflow: hidden;
	padding: 22px 22px;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
}

.mmbp-partner-offers .block_overlay p{
	color: #fff;
}

.mmbp-partner-offers .mmbp-rewards-title {
	font-weight: 600;
	font-size: 1.1rem;
}

.mmbp-partner-offers .mmbp-rewards-desc {
	font-size: 0.8rem;
}

.mmbp-partner-offers .mmbp-rewards-desc.short {
	opacity: 1;
	height: auto;
	transition: .8s ease;
}

.mmbp-partner-offers .mmbp-rewards-desc.long {
	opacity: 0;
	height: 0;
	transition: .8s ease;
	display: none;
}

.mmbp-partner-offers .mmbp-rewards-link a{
	color: #fff;
	border-bottom: 1px solid #fff;
	display: inline-block;
}

.mmbp-partner-offers .mmbp-rewards-link a:hover {
	border-bottom: 1px solid #4a40ff;
}

.mmbp-partner-offers .block_container:hover .block_overlay{
	position: absolute;
	height: 100%;
	transition: .8s ease;
}

.mmbp-partner-offers .block_container:hover .mmbp-rewards-desc.long {
	opacity: 1;
	height: auto;
	transition: .8s ease;
	display: block;
}

.mmbp-partner-offers .block_container:hover .mmbp-rewards-desc.short {
	opacity: 0;
	height: 0;
	transition: .8s ease;
	display: none;
}

.mmbp-partner-offers .partner-block {
	margin-bottom: 6.5rem;
}

.membership-member-login {
	color: #fff;
	text-align: center;
	margin-bottom: 0;
    padding-top: 24px;
}

.membership-member-login a{
	color: #fff;
	border-bottom: 1px solid #fff;
	text-transform: uppercase;
}

.membership-member-login a:hover {
	border-bottom: 1px solid #4a40ff;
}

.mmbp-partner-offers img {
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.block_container a {
	color: #fff;
}

/****FAQ ACCORDION****/

#faq .card {
  	margin-bottom: 12px;
  	border: 0;
}

#faq .card .card-header {
  	border: 2px solid #000;
  	padding: 0;
}

#faq .card .card-header .btn-header-link {
  	color: #000;
  	display: block;
  	text-align: left;
  	color: #000;
  	font-size: 0.9rem;
  	padding: 20px;
}

#faq .card .card-header .btn-header-link:after {
  	content: "\f106";
  	font-family: 'Font Awesome 5 Free';
  	font-weight: 600;
  	width: 65px;
  	text-align: center;
  	border-left: 2px solid #000;
  	position: absolute;
  	right: 0;
 	height: 63px;
    top: 0;
    padding-top: 20px;
    font-size: 1.2rem;
}

#faq .card .card-header .btn-header-link:not(.collapsed):after {
	border-left: 2px solid #fff;
}

#faq .card .card-header .btn-header-link.collapsed {
  	background: #fff;
  	color: #000;
}

#faq .card .card-header .btn-header-link:not(.collapsed) {
	background: #000;
  	color: #fff;
}

#faq .card .card-header .btn-header-link.collapsed:after {
  	content: "\f107";
}

#faq .card .collapsing {
  	background: #fff;
  	border-bottom: 2px solid #000;
  	border-left: 2px solid #000;
  	border-right: 2px solid #000;
}

#faq .card .collapse.in {
  background: #fff;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  border-right: 2px solid #000;
}

#faq .card .collapse {
  border: 0;
}

#faq .card .card-body {
	padding: 20px;
	line-height: 30px;
}

#faq .card .collapse.show {
  background: #FFE472;
  line-height: 30px;
  color: #222;
}
/****FAQ ACCORDION****/

.membership-faq-right h2 {
	font-size: 2.2rem;
    margin-bottom: 25px;
}


/*****BENEFITS PAGE*****/
.mmbp-rewards-benefits-page {
	margin-top: 4rem;
}

.mmbp-rewards-title.benefits-pg {
    font-weight: 600;
    color: #000;
    font-size: 1.4rem;
    padding-top: 1.8rem;
    text-transform: uppercase;
}

.mmbp-rewards-desc.benefits-pg {
    color: #333;
    line-height: 1.6rem;
    text-align: justify;
}
.benefits-rewards-block {
	padding-bottom: 8vh;
}
.benefits-sepa {
	border-bottom: 2px solid #ccc;
}
/*****BENEFITS PAGE*****/


/*****PARTNER OFFERS PAGE*****/
#partner-offers-page .offers-left,
#partner-offers-page .offers-right {
	padding: 0;
}

#partner-offers-page .offers-right {
	background: #000;
}

#partner-offers-page > .row {
	display: flex;
}

.partner-offers-content {
	padding: 6rem;
	margin-top: 8rem;
}

.partner-offers-content .mmbp-rewards-title{
	font-size: 1.7rem;
    color: #fff;
    font-weight: 600;
    margin-bottom: 4rem;
    position: relative;
}

.partner-offers-content .mmbp-rewards-title:after {
    content:'';
    position:absolute;
    left:0;
    top: 2rem;
    width: 10%;
    height: 3px;
    background:#fff;
}

.partner-offers-content .mmbp-rewards-desc {
	color: #fff;
    line-height: 1.5rem;
    font-size: 0.9rem;
    text-align: justify;
    margin-bottom: 5rem;
}

.partner-offers-content .mmbp-btn.black-bg {
	background-color: #fff;
    color: #000;
    margin-right: 5px;
}

.partner-offers-content .mmbp-btn.black-bg:hover:after {
	right: 80px;
}

.partner-offers-content .mmbp-btn.black-bg:hover {
    color: #000 !important;
}

.partner-offers-content .mmbp-btn.black-bg:after {
 	color: #000;
 }

.partner-offers-content .mmbp-btn.white-bg {
	border: 2px solid #fff;
    color: #fff;
    margin-left: 5px;
}

.partner-offers-content .mmbp-btn.white-bg:hover {
    color: #fff !important;
}

.partner-offers-content .mmbp-btn.white-bg:after {
	color: #fff;
}

.partner-offers-content .mmbp-btn.white-bg:hover:after {
	right: 80px;
}

.offers-left-content, .offers-right-content {
	padding: 0;
}

.partner-offers-content-block {
	margin-top: 2rem;
    padding: 6rem;
}

.partner-offers-content-block p{
	color: #000;
}

.partner-offers-content-block .mmbp-rewards-title {
	font-size: 1.3rem;
    font-weight: 700;
    text-transform: uppercase;
}

.partner-offers-content-block .mmbp-rewards-desc {
	color: #333;
	text-align: justify;
	line-height: 1.4rem;
}

#partner-bottom-block .blocks {
	display: flex;
	margin-bottom: 1rem;
}

.left-block-partners, .right-block-partners{
	padding: 0;
}
.partner-offer-right {
	background: #000;
	height: 100%;
	padding-left: 3rem;
    padding-right: 3rem;
    padding-top: 3rem;
}

.partner-offer-right .mmbp-rewards-title {
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	font-size: 1.3rem;
}

.partner-offer-right .mmbp-rewards-desc {
	color: #ccc;
	text-align: justify;
	font-size: 0.85rem;
    line-height: 1.4rem;
}

.partner-offer-right .mmbp-btn.black-bg {
	border: 2px solid #fff;
    width: 212px;
}

.partner-offer-right .mmbp-btn {
    padding: 12px;
}

.partner-offer-right .mmbp-btn.black-bg:after {
	top: 13px;
}

#partner-bottom-block {
	position: relative;
    padding-bottom: 5rem;
    margin-left: -15px;
    margin-right: -15px;
}

#partner-bottom-block .membership-landingPattern {
	width: 50%;
	background-size: inherit;
}

#partner-bottom-block .top-padding {
	padding-top: 8rem;
}

#module-cm_membership-offers .page-footer {
	display: none;
}

#module-cm_membership-offers #footer {
	padding-top: 0;
}

#background-image-block {
	background-image: url(../img/membership-partner-cover.jpg);
	width: 100%;
	height: 700px;
	background-size: cover;
}

/*****PARTNER OFFERS PAGE*****/
@media (max-width: 1500px){
	.partner-offers-content {
		margin-top: 0;
	}
}

@media (max-width: 1315px){
	.partner-offers-content {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
}
@media (max-width: 1199px){
	.membership-top-block-container {
		left: 0;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.mmbp-partner-offers .block_overlay {
		height: 133px;
	}
	.partner-offer-right {
		padding-top: 1.5rem;
	} 
	.partner-offers-content .mmbp-rewards-title {
		font-size: 1.3rem;
		margin-bottom: 3rem;
	}
	.partner-offers-content .mmbp-rewards-desc {
		margin-bottom: 3rem;
		font-size: 0.7rem;
	}

	.partner-offers-content {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	.partner-offers-content-block {
		padding: 3rem;
	}

}

@media (min-width: 768px) and (max-width: 991px) {
	.mmbp-partner-offers .block_overlay {
		height: 54px;
		bottom: -28px;
	}

	.benefits-rewards-block img {
		margin-top: 10vh;
	}
}

@media (max-width: 991px){
	.mmbp-partner-offers .partner-block {
    	margin-bottom: 2.5rem;
	}
	body #membership-top-block {
		height: 640px !important;
	}
	.membership-top-block-contents h2 {
		font-size: 1.3rem;
		line-height: 28px;
	}

	.membership-top-block-contents p {
		font-size: 0.9rem;
		line-height: 22px;
	}

	.mmbp-btn {
		width: 100%;
	}

	.mmbp-btn.white-bg {
		margin-left: 0;
	}

	.mmbp-btn.black-bg {
		margin-right: 0;
		margin-bottom: 8px;
	}

	#partner-bottom-block .blocks {
		display: block;
	}

	#partner-bottom-block .membership-landingPattern {
		width: 100%;
	}

	.partner-offer-right {
		padding-bottom: 3rem;
	}

	.left-block-partners, .right-block-partners {
		padding-left: 15px;
		padding-right: 15px;
	}

	#partner-offers-page > .row {
		display: block;
		position: relative;
	}

	#partner-offers-page .offers-right {
		position: absolute;
		height: 100%;
		background: rgba(0,0,0,0.8);
	}

	.partner-offers-content {
    	padding: 1.5rem;
    }

    .partner-offers-content .mmbp-rewards-desc {
    	font-size: 0.8rem;
    }

    .partner-offers-content .mmbp-rewards-title {
    	font-size: 1.2rem;
	}

	.partner-offers-content .mmbp-btn.white-bg {
		margin-left: 0;
	}

	.partner-offers-content-block {
    	margin-top: 0rem;
    	padding: 4rem;
	}
}

@media (max-width: 767px){
	#partner-bottom-block .membership-landingPattern {
		height: 100%;
	}
	.membership-top-block-container {
		width: 80%;
		left: -27px;
	}
	.mmbp-partner-offers .block_overlay {
		height: 153px;
		bottom: -84px;
	}
	.mmbp-partner-offers .block_container:hover .block_overlay {
		height: 153px;
	}
	.mmbp-partner-offers .block_container:hover .mmbp-rewards-desc.short {
		opacity: 1;
    	height: auto;
    	display: block;
	}
	.mmbp-partner-offers .block_container:hover .mmbp-rewards-desc.long {
		opacity: 0;
    	height: 0;
    	transition: .8s ease;
    	display: none;
	}
	.membership-faq-left {
    	margin-top: 7vh;
    	margin-bottom: 0vh;
	}
	.membership-faq-right {
		width: 100%;
		margin-top: 9vh;
	}
	.membership-landingPattern {
		height: 25%;
		width: 100%;
	}
	.membership-top-block-contents {width: 100%;}
	.membership-landingPattern {
		height: 25%;
		width: 100%;
	}
	.membership-benefits-block-left {width: 100%; margin-top: 7vh;}
	.membership-steps-listing {margin-bottom: 20px;}
	.membership-login-block.right {
		float: none; 
		margin-right: auto; 
		margin-left: auto;
		margin-top: 4vh;
		margin-bottom: 6vh;
	}
	.membership-benefits-block {margin-top: 5vh;}
}

@media (max-width: 450px){
	.membership-login-block.right {width: 100%;}
}