/* NRO (locations/new-locations Page ------------------------------------------------------------ START*/

.locations-page {
  margin: 0;
  padding: 32px 0 32px;
  background: transparent;
  min-height: calc(100vh - 432px);

  .new-locations.container {
    max-width: 880px;
    border-radius: 12px;
    padding: 24px;
  }

  .new-locations p.no-record {
    text-align: center;
    font-family: "TradeGothicLTStd", "Trade Gothic LT Std", sans-serif;
    font-weight: bold;
    font-size: 1.125rem;
    line-height: 1.5;
  }

  .new-locations .tabs {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 680px;
    /* padding: 3px;
        background: #e7e7e7; */
    border-radius: 40px;
    flex-wrap: wrap;
  }

  .new-locations .tab {
    flex: 1;
    padding: 8px 12px;
    text-align: center;
    font-family: "TradeGothicLTStd", "Trade Gothic LT Std", sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 700;
    color: #606060;
    border-radius: 40px;
    cursor: pointer;
    transition: background 0.25s ease;
    background: #e7e7e7;
  }

  .new-locations .tab a {
    color: inherit !important;
    text-decoration: none;
    text-wrap-mode: nowrap;
    white-space: nowrap;
  }

  .new-locations .tab:not(.active):hover {
    background: #dcdcdc;
  }

  .new-locations .tab.active {
    background: var(--brand-red, #be2f37);
    color: #ffffff;
  }

  .location-card {
    display: flex;
    min-height: 150px;
    margin-bottom: 16px;
    background: transparent;
    border: 1px solid #000;
    border-radius: 16px;
    overflow: hidden;
    flex-direction: column;
  }

  .location-card .card-image {
    flex: 0 0 180px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
  }

  .location-card .card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* object-fit: cover; */
    display: block;
  }

  .card-content {
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    width: 100%;
    padding: 32px;
    flex-direction: column;
  }

  .loc-title {
    font-family: "TradeGothicLTStd-BdCn20";
    font-size: 1.25rem;
    line-height: 1.5;
    font-weight: 700;
    color: var(--brand-red);
    margin-bottom: 0;
  }

  a .loc-title:hover {
    color: black;
  }

  .card-text a {
    text-decoration: underline;
  }

  .card-text a:hover {
    text-decoration: none;
    color: #000;
  }

  .address {
    font-family: "TradeGothicLTStd-Cn18";
    font-weight: 400;
    font-size: 1.125rem;
    line-height: 1.3;
    color: var(--brand-body-accent-color, #606060);
  }

  .card-status {
    display: flex;
    align-items: center;
  }

  .status-pill {
    padding: 8px 32px;
    border: 2px solid var(--brand-red, #be2f37);
    border-radius: 30px;
    background: transparent;
    font-family: "TradeGothicLTStd-BdCn20";
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--brand-red, #be2f37);
  }

  .comingsoon .status-pill {
    background: var(--brand-red);
    color: #ffffff;
    border: none;
  }
}

@media (max-width: 767px) {
  .locations-page {
    padding: 20px 0;

    .new-locations.container {
      padding: 16px;
    }

    .new-locations .tabs {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 8px;
      background: transparent;
      border-radius: 16px;
    }

    .new-locations .tab {
      padding: 12px 0;
      background: #e7e7e7;
    }

    .location-card {
      gap: 10px;
    }

    .card-content {
      display: grid;
      grid-template-rows: auto auto;
      gap: 16px;
      padding: 20px 20px 20px 0;
      justify-content: center;
    }

    .card-text {
      text-align: center;
    }

    .card-status {
      justify-content: center;
      width: 100%;
    }

    .status-pill {
      padding: 6px 14px;
    }
  }
}

@media (min-width: 576px) {
  .location-card {
    flex-direction: row;
  }

  .location-card .card-image {
    flex: 0 0 12.5rem;
  }
}

@media (min-width: 768px) {
  .new-locations .tabs {
    flex-wrap: nowrap;
    background: #e7e7e7;
  }
}

@media (min-width: 992px) {
  .card-content {
    flex-direction: row;
    align-items: center;
  }

  .address {
    margin-bottom: 0;
  }
}

/* NRO (locations/new-locations  Page ------------------------------------------------------------END*/

/* accessibility-statement Page ------------------------------------------------------------ START*/
.page--accessibility {
  background: #fff;
}

.page--accessibility .container--iframe {
  max-width: 960px;
  padding: 48px 0;
}

.page--accessibility h1 {
  font-family: var(
    --brand-heading-font,
    "TradeGothicLTStd-BdCn20",
    "Helvetica Neue Condensed Bold",
    "Arial Narrow Bold",
    sans-serif
  );
  font-size: 2.5rem;
  font-weight: 700;
  line-height: normal;
  color: var(--brand-body-default-color, #303030);
  padding: 8px 0 12px;
  margin-bottom: 40px;
}

@media (max-width: 768px) {
  .page--accessibility h1 {
    font-size: 1.5rem;
    padding: 0 40px;
  }
}

/* accessibility-statement Page ------------------------------------------------------------ END*/

/* ========================================
   STORY - PROMOTIONAL CARD SECTION
   Scope only to About-us or our-story
======================================== */

#page-our-story .promo-card-section {
  padding: 80px 0;
  background-color: var(--brand-color-sugar-cane, #ededec) !important;
}

#page-our-story .promo-card {
  text-align: center;
  display: flex;
  flex-direction: column;
  flex: 1;
  height: 100%;
  width: 100%;
}

#page-our-story .promo-card__content {
  display: flex;
  flex-wrap: wrap;
  height: 100%;
}

#page-our-story .promo-card__title {
  font-family: var(--font-heading, serif);
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--brand-red, #be2f37);
}

#page-our-story .promo-card__cta_container {
  display: flex;
  justify-content: center;
}

#page-our-story .promo-card__cta {
  color: #fff;
  background: var(--brand-red, #be2f37);
  border: 2px solid var(--brand-red, #be2f37);
  padding: 0.75rem 1.5rem;
  text-transform: uppercase;
  display: inline-block;
}

#page-our-story .promo-card__image {
  width: 100%;
  display: block;
  margin-bottom: 1.5rem;
}

#page-our-story .promo-card__description {
  font-size: 1rem;
  line-height: 1.8;
  color: #555;
  flex-grow: 1;
  padding: 0 10px;
}

#page-our-story .promo-card-content__row {
  display: flex;
  flex-direction: column;
  margin-bottom: 1rem;
}

/* ==========================================================================
  Two Column Layout - Left Content, Right Image
   ========================================================================== */

/* TO DO: Remove .page-our-story from main.css once componetized */

/* Abouts us */

#page-our-story {
  .half-image-half-content__row {
    text-align: center;

    .half-image-half-content__content-inner {
      padding: 1.5rem;
    }

    .half-image-half-content {
      h3 {
        text-wrap-style: balance;
      }
    }
  }

  @media (min-width: 414px) {
    h2 {
      font-size: 2rem;
    }

    .half-image-half-content__row {
      .half-image-half-content {
        h3 {
          font-size: 1.5rem;
        }
      }
    }
  }

  @media (min-width: 576px) {
    h2 {
      font-size: 2.5rem;
    }

    p {
      font-size: 1.25rem;
    }

    .half-image-half-content__row {
      .half-image-half-content {
        h3 {
          font-size: 2rem;
        }
      }
    }
  }

  @media (min-width: 992px) {
    .half-image-half-content__row {
      .half-image-half-content {
        h3 {
          font-size: 2.125rem;
        }
      }
    }
  }
}
/* hero-section component */
.hero-image,
.hero-video {
  display: flex;
  align-items: center;
}

.hero-video__background-m-video {
  aspect-ratio: 9/16;
  object-fit: cover;
}

.hero-video__background-d-video {
  aspect-ratio: 21/9;
  object-fit: cover;
}

.hero-image__wrapper,
.hero-video__wrapper {
  position: absolute;
  width: 100%;
}

.hero-image__content,
.hero-video__content {
  color: #fff;

  &.text-center .hero-image__cta-group,
  &.text-center .hero-video__cta-group {
    justify-content: center;

    .hero-image__cta,
    .hero-video__cta {
      margin-left: auto;
      margin-right: auto;
    }
  }

  &.text-left .hero-image__cta-group,
  &.text-left .hero-video__cta-group {
    justify-content: start;

    .hero-image__cta,
    .hero-video__cta {
      margin-right: auto;
    }
  }

  &.text-right .hero-image__cta-group,
  &.text-right .hero-video__cta-group {
    justify-content: end;

    .hero-image__cta,
    .hero-video__cta {
      margin-left: auto;
    }
  }
}

.hero-image__heading,
.hero-image__heading-image,
.hero-image__disclaimer,
.hero-video__heading,
.hero-video__heading-image,
.hero-video__disclaimer {
  margin-bottom: 1rem;
}

.hero-image__heading span,
.hero-video__heading span {
  color: #fff;
  font-family: inherit;
  text-transform: uppercase;
}

.hero-image__cta-group,
.hero-video__cta-group {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.hero-image__cta,
.hero-video__cta {
  text-transform: uppercase;
  width: min(100%, 15rem);
}

.hero-video__video-controls {
  &.right-2 {
    right: 2%;
  }

  &.bottom-2 {
    bottom: 2%;
  }
}

.hero-image__cta--primary,
.hero-image__cta--primary:visited,
.hero-video__cta--primary,
.hero-video__cta--primary:visited {
  background: var(--brand-red, #be2f37);
  border: 2px solid var(--brand-red, #be2f37);
  color: #fff;
}

.hero-image__cta--primary:active,
.hero-image__cta--primary:hover,
.hero-image__cta--primary:focus,
.hero-video__cta--primary:active,
.hero-video__cta--primary:hover,
.hero-video__cta--primary:focus {
  background: var(--brand-red-hover, #ec3f47);
  border: 2px solid var(--brand-red-hover, #ec3f47);
  color: #fff;
}

.hero-image__cta--secondary,
.hero-image__cta--secondary:visited,
.hero-video__cta--secondary,
.hero-video__cta--secondary:visited {
  border: 2px solid #fff;
  background: transparent;
  color: #fff;
}

.hero-image__cta--secondary:active,
.hero-image__cta--secondary:hover,
.hero-image__cta--secondary:focus,
.hero-video__cta--secondary:active,
.hero-video__cta--secondary:hover,
.hero-video__cta--secondary:focus {
  border: 2px solid #fff;
  background: #fff;
  color: var(--brand-red, #be2f37);
}

@media (min-width: 768px) {
  .hero-image__cta-group,
  .hero-video__cta-group {
    display: flex;
    flex-direction: row;
  }
}

/* end hero-section component */
