﻿/*======================================
	01. Start Shared CSS
========================================*/
:root {
  --light-orange: #FDF7F3;
  --light-blue: #EBF2F7;
  --orange: #E68A56;
  --black: #333;
  --blue: #347DA9;
  --white: #FFF;
}

a.arrow-link {
  color: var(--blue);
  display: flex;
    align-items: center;
    gap: 0.375rem;
}

a.arrow-link:hover img {
  transform: translateX(25%);
}

h2 {
  color: var(--black);
  font-size: 2.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 2.8125rem;
}

h3 {
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.bg-light-orange {
  background-color: var(--light-orange);
}

.highlight-orange {
  color: var(--orange);
}

.hover-bg:hover {
  background-color: var(--light-orange);
}

.hover-scale:hover {
  transform: scale(1.01);
}

.icon-title {
  display: flex;
    align-items: center;
    gap: 0.75rem;
}

.image-border {
  border-bottom: 7px solid var(--blue);
}

.shadow-card {
  border-radius: 0.375rem;
  background: var(--white, white);
  display: block;
  box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.18), 3px 3px 8px 0px rgba(230, 138, 86, 0.20);
  overflow: hidden;
  width: 100%;
}

.title-icon {
  width: 1rem;
}
/*======================================
	End Shared CSS
========================================*/

/*======================================
	02. Start Mission CSS
========================================*/
.mission {
  position: relative;
  overflow: hidden;
}

.mission a {
  color: var(--blue);
  display: flex;
    align-items: center;
    gap: 0.5rem;
  text-align: center;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-decoration: none;
  width: fit-content;
}

.mission h1 {
  color: var(--orange);
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}

.mission h2 {
  color: var(--black);
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4em;
}

.mission-image {
  display: block;
  max-width: 31.1rem;
  position: absolute;
    left: 0;
    bottom: 0;
}

@media (max-width:768px) {
  .mission h2 {
    font-size: 1.125rem;
  }

  .mission-image {
    position: relative;
    width: 100%;
  }
}
/*======================================
	End Mission CSS
========================================*/


/*======================================
	03. Start News CSS
========================================*/

.news h3 {
  color: var(--blue);
  margin-bottom: 0.75rem;
}

.news p {
  font-size: 0.875rem;
}

.news-article {
  border-bottom: 1px solid #E9E2E2;
  display: block;
  height: 25%;
  padding: 2rem;
}

.news-article:last-child {
  border-bottom: none;
}

.news-article h3 {
  font-size: 1rem;
}

.news-article p {
  font-size: 0.75rem;
  line-height: 1.4em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.news-featured-image {
  background-position: center;
  background-size: cover;
  min-height: 24rem;
  height: 100%;
  width: 100%;
}

@media (max-width:576px) {
  .news-article {
    padding: 1.5rem;
  }

  .news-article h3 {
    font-size: 1.125rem;
  }

  .news-article p {
    font-size: 0.875rem;
  }
}

/*======================================
  End News CSS
========================================*/


/*======================================
	04. Start Videos CSS
========================================*/
.videos h3 {
  margin-bottom: 0.75rem;
}

.videos .meta-details {
  margin-bottom: 1rem;
}

.videos .meta-list {
  margin-right: 1rem;
}

.videos .video iframe {
  aspect-ratio: 16/9;
  width: 100%;
}
/*======================================
  End Videos CSS
========================================*/

/*======================================
	05. Start Events CSS
========================================*/
.events h3 {
  color: var(--blue);
}

.events .image {
  aspect-ratio: 369/185;
  display: flex;
    align-items: center;
    justify-content: center;
  width: 100%;
  overflow: hidden;
  width: auto;
}

.events .image img {
  width: 100%;
}

.event-date {
  border: 1px solid var(--orange);
  color: var(--blue);
  display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0.5rem;
    justify-content: center;
  height: 5rem;
  min-width: 5rem;
  width: 5rem;
}

.event-day {
  text-align: center;
  font-size: 2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.3125rem;
}

.event-details {
  width: auto;
}

.event-month {
  text-align: center;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.3125rem;
}
/*======================================
  End Events CSS
========================================*/

/*======================================
	06. Start Marcos CSS
========================================*/
.marcos {
  background-image: url(/images/marcos-background.jpg);
  background-position: center;
  background-size: cover;
}

.marcos h2,
.marcos h3 {
  color: var(--white);
}

.marcos h3 {
  font-size: 1.625rem;
  font-weight: 400;
  margin-bottom: 2.5rem;
}

.marcos .section-button {
  margin-bottom: 2.5rem;
}

@media (max-width:576px) {
  .marcos h2,
  .marcos h3 {
    text-align: center;
  }

  .marcos .section-button {
    margin: 0 auto 2.5rem;
    text-align: center;
  }
}
/*======================================
  End Marcos CSS
========================================*/

/*======================================
	07. Start Giving Back CSS
========================================*/
.giving-back h2 {
  margin-bottom: 2.5rem;
}

.giving-back h3 {
  margin-bottom: 0.75rem;
}

.giving-back .feature-item {
  margin-bottom: 1.75rem;
}

.giving-back .feature-thumb img {
  display: block;
  min-width: 3.625rem;
}
/*======================================
	End Giving Back CSS
========================================*/


/*======================================
	08. Get In Touch CSS
========================================*/
.get-in-touch {
  background-image: url(/images/get-in-touch-background.jpg);
  background-position: center;
  background-size: cover;
}

.get-in-touch h2,
.get-in-touch p {
  color: var(--white);
}

.get-in-touch h2 {
  margin-bottom: 0.5rem;
  line-height: 2.8125rem
}

.get-in-touch p {
  font-size: 1rem;
  font-weight: 400;
  margin-bottom: 2.5rem;
  line-height: 1.625rem;
}

.get-in-touch .fun-facts:before {
  background: rgba(255, 255, 255, 0.10);;
}

.get-in-touch .right-form {
  border-top: 10px solid var(--blue, #347DA9);
  background: var(--white, #FFF);
  padding: 3.75rem 2.675rem;
}

.get-in-touch .text {
  padding-right: 6rem;
}

@media (max-width:576px) {
  .get-in-touch .text {
    padding-right: 0.75rem;
    text-align: center;
  }
}
/*======================================
	End Get In Touch CSS
========================================*/

/*======================================
	09. Subscribe To Newsletter CSS
========================================*/

.newsletter {
  background-color: var(--orange);
}

/*======================================
	End Subscribe To Newsletter CSS
========================================*/


/*======================================
	10. Member Benefits CSS
========================================*/
.benefits p {
  font-size: 1rem;
  text-align: center;
}

.benefits .portfolio-item-wrapper {
  padding: 3rem;
  position: relative;
}

.benefits .portfolio-btn-wrapper {
  display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.benefits .portfolio-btn-wrapper .portfolio-btn {
  background: var(--white);
  color: var(--blue);
  display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
  text-align: center;
}

.benefits .portfolio-btn-wrapper .portfolio-btn .icon-default {
  display: block;
}

.benefits .portfolio-btn-wrapper .portfolio-btn .icon-active {
  display: none;
}

.benefits .portfolio-btn-wrapper .portfolio-btn.active {
  background: var(--blue);
}

.benefits .portfolio-btn-wrapper .portfolio-btn.active .icon-default {
  display: none;
}

.benefits .portfolio-btn-wrapper .portfolio-btn.active .icon-active {
  display: block;
}

.benefits .portfolio-item-wrapper::after {
  border-radius: 50%;
  content: '';
  display: block;
  height: 1.875rem;
  position: absolute;
    top: 1rem;
    right: 1rem;
  width: 1.875rem;
  z-index: 1;
}

.benefits .BUSINESSSAVINGS .portfolio-item-wrapper::after {
  background: url('/images/icon-business-active.svg'), var(--blue);
  background-position: center;
  background-repeat: no-repeat;
}

.benefits .CONSUMERSAVINGS .portfolio-item-wrapper::after {
  background: url('/images/icon-consumer-active.svg'), var(--blue);
  background-position: center;
  background-repeat: no-repeat;
}

.benefits .HEALTHSAVINGS .portfolio-item-wrapper::after {
  background: url('/images/icon-health-active.svg'), var(--blue);
  background-position: center;
  background-repeat: no-repeat;
}

.benefits .TRAVELSAVINGS .portfolio-item-wrapper::after {
  background: url('/images/icon-travel-active.svg'), var(--blue);
  background-position: center;
  background-repeat: no-repeat;
}

@media (max-width:576px) {
  .benefits .portfolio-btn-wrapper {
    display: flex;
      flex-wrap: wrap;
  }
}

/*======================================
	End Member Benefits CSS
========================================*/

/*======================================
	11. Plans CSS
========================================*/

.plans p {
  font-size: 1rem;
  text-align: center;
}

.plans h5 {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
}

.plans .back-to-top {
  color: var(--orange);
}

.plans .back-to-top:hover {
  color: var(--blue);
}

.plans .plus-title {
  color: var(--orange);
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  text-transform: capitalize;
}

.plans .shadow-card {
  align-self: stretch;
  box-shadow: 3px 3px 8px 0px rgba(0, 0, 0, 0.22);
  display: flex;
    flex-direction: column;
    justify-content: space-between;
  height: 100%;
}

.plans .plan-preferred {
  border: 2px solid var(--orange);
}

.plans .plan-preferred .plan-header::after {
  background: var(--orange);
  color: var(--white);
  content: 'Popular';
  display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
  transform: rotate(45deg) translateX(25%) translateY(-25%);
  padding: 0rem 1.125rem;
  position: absolute;
    right: 0;
    top: 0;
  width: 8rem;
}

.plan-benefit-list {
  margin-left: 1.5em;
}

.plan-benefit {
  list-style-type: disc;
}

.plan-benefit a {
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.plan-benefit a:hover {
  color: var(--blue);
  text-decoration: underline;
}

.plan-cta-wrap {
  display: flex;
    align-items: center;
    justify-content: space-between;
  padding: 1rem;
  width: 100%;
}

.plan-header {
  background: linear-gradient(90deg, #EDAD89 0%, #E68A56 100%);
  overflow: hidden;
  padding: 1.5rem 1rem;
  position: relative;
}

.plan-header.plus {
  background: linear-gradient(90deg, #347DA9 0%, #266380 100%);
}

.plan-header h4 {
  color: var(--white);
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  text-transform: uppercase;
}

.plans-category {
  margin-bottom: 2rem;
  text-align: center;
}

.plans-plus-wrap {
  background-color: var(--light-blue);
  border-radius: 6px;
  padding: 3rem 0;
}

/*======================================
	End Plans CSS
========================================*/

