/* Font Imports */
@font-face {
  font-family: "Volvo Novum";
  src: url("https://firebasestorage.googleapis.com/v0/b/hseo-cdn.appspot.com/o/OEM-Fonts%2FVolvo%2FVOLVONOVUM-REGULAR.OTF?alt=media&token=17135caf-e553-4e15-a8fa-367efa24fa93");
}

@font-face {
  font-family: "Volvo Novum Medium";
  src: url("https://firebasestorage.googleapis.com/v0/b/hseo-cdn.appspot.com/o/OEM-Fonts%2FVolvo%2FVOLVONOVUM-MEDIUM.OTF?alt=media&token=8929018c-aacf-4de9-9105-02fed0e13f7b");
}

/* Variables */
:root {
  /* RH = Research Hub */
  /* RHBS = Research Hub Banner Section*/

  /* Banner Background Graphics */
  --hsd-rhbs-bkg-desktop: url("https://pictures.dealer.com/c/coastvolvovcna/1234/2c1f23e5ce9942c39d6a35795239e04a.jpg");
  --hsd-rhbs-bkg-mobile: url("https://pictures.dealer.com/c/coastvolvovcna/1234/9cb9bf7925a54bce80fd31d3f7b02f7a.jpg");

  /* Banner Title */
  --hsd-rhbs-title-color: #fff;
  --hsd-rhbs-title-font-family: "Volvo Novum";
  --hsd-rhbs-title-font-size: 40px;

  /* Banner Content */
  --hsd-rhbs-content-color: #fff;
  --hsd-rhbs-content-font-family: "Volvo Novum";
  --hsd-rhbs-content-font-size: 20px;

  /* Page */
  --hsd-rh-page-bkg-color: #eee;

  /* Section Title */
  --hsd-rh-section-title-color: #000;
  --hsd-rh-section-title-font-family: "Volvo Novum Medium";
  --hsd-rh-section-title-font-size: 32px;

  /* ==-------== */
  /* Card Styles */
  --hsd-rh-card-bkg-color: #fff;
  --hsd-rh-card-border-radius: 0;
  --hsd-rh-card-border: 0;

  /* Card Title */
  --hsd-rh-card-title-color: #000;
  --hsd-rh-card-title-font-family: "Volvo Novum";
  --hsd-rh-card-title-font-size: 24px;

  /*  */
  /*  */
  /*  */

  /* BTNs */
  --hsd-rh-btn-font-family: "Volvo Novum";
  --hsd-rh-btn-border-radius: 3px;
  --hsd-rh-btn-font-size: 16px;
  --hsd-rh-btn-width: 100%;
  --hsd-rh-btn-height: 48px;

  /* Card BTN Pri */
  --hsd-rh-btn-pri-background: #0c206f;
  --hsd-rh-btn-pri-font-color: #fff;
  --hsd-rh-btn-pri-border: 2px solid #0c206f;
  /* Card BTN Pri Hover */
  --hsd-rh-btn-pri-background-hover: #58595b;
  --hsd-rh-btn-pri-font-color-hover: #fff;
  --hsd-rh-btn-pri-border-hover: 2px solid #58595b;

  /* Card BTN Sec */
  --hsd-rh-btn-sec-background: #fff;
  --hsd-rh-btn-sec-font-color: #000000;
  --hsd-rh-btn-sec-border: 2px solid #000000;
  /* Card BTN Sec Hover */
  --hsd-rh-btn-sec-background-hover: #58595b;
  --hsd-rh-btn-sec-font-color-hover: #fff;
  --hsd-rh-btn-sec-border-hover: 2px solid #58595b;

  /* Modal Styles */
  --hsd-rhhs-modal-background: #fff;
  --hsd-rhhs-modal-heading-font-color: #0c206f;
  --hsd-rhhs-modal-content-font-color: #0c206f;
  --hsd-rhhs-modal-link-font-size: 14px;
  --hsd-rhhs-modal-link-font-color: #0c206f;
  --hsd-rhhs-modal-link-font-color-hover: #0c206f;
  --hsd-rhhs-modal-link-background-hover: #0c206f26;
  --hsd-rhhs-modal-scrollbar-color: #0c206f transparent;
  --hsd-rhhs-modal-webkit-scrollbar-thumb-color: #0c206f;
  --hsd-rhhs-modal-webkit-scrollbar-track-color: transparent;
}

/**** Banner CSS ****/
.hsd-research-hub-banner-section {
  background: var(--hsd-rh-page-bkg-color);
}
.hsd-rhbs-background {
  background: var(--hsd-rhbs-bkg-desktop);
  background-position: center;
  background-size: cover;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 210px;
  padding: 0 2rem;
  max-width: 1920px;
  margin: 0 auto;
}
.hsd-rhbs-page-title {
  color: var(--hsd-rhbs-title-color) !important;
  text-align: center;
  font-family: var(--hsd-rhbs-title-font-family) !important;
  font-size: var(--hsd-rhbs-title-font-size) !important;
  font-style: normal;
  font-weight: 700;
  line-height: 39.6px; /* 99% */
}
.hsd-rhbs-banner-content {
  color: var(--hsd-rhbs-content-color);
  text-align: center;
  font-family: var(--hsd-rhbs-content-font-family);
  font-size: var(--hsd-rhbs-content-font-size) !important;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 20px */
}
.hsd-rhbs-post-banner-cont {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  background-color: var(--hsd-rh-page-bkg-color);
  padding: 1em 2rem 0;
  margin: 0 auto;
}

.hsd-rhbs-post-banner-content-cont {
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  padding: 24px 0;
}

.hsd-rhbs-post-btn-cont {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
}

.hsd-rh-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--hsd-rh-btn-font-family);
  border-radius: var(--hsd-rh-btn-border-radius);
  font-size: var(--hsd-rh-btn-font-size);
  width: var(--hsd-rh-btn-width);
  height: var(--hsd-rh-btn-height);
  transition: 0.5s;
}

.hsd-rh-btn-pri {
  background: var(--hsd-rh-btn-pri-background);
  color: var(--hsd-rh-btn-pri-font-color) !important;
  border: var(--hsd-rh-btn-pri-border);
}
.hsd-rh-btn-pri:hover {
  background: var(--hsd-rh-btn-pri-background-hover);
  color: var(--hsd-rh-btn-pri-font-color-hover) !important;
  border: var(--hsd-rh-btn-pri-border-hover);
}

.hsd-rh-btn-sec {
  background: var(--hsd-rh-btn-sec-background);
  color: var(--hsd-rh-btn-sec-font-color) !important;
  border: var(--hsd-rh-btn-sec-border);
}
.hsd-rh-btn-sec:hover {
  background: var(--hsd-rh-btn-sec-background-hover);
  color: var(--hsd-rh-btn-sec-font-color-hover) !important;
  border: var(--hsd-rh-btn-sec-border-hover);
}

.hsd-rh-btn,
.hsd-rh-btn:hover,
.hsd-rh-btn:link,
.hsd-rh-btn:active,
.hsd-rh-btn:visited {
  text-decoration: none !important;
}

@media screen and (max-width: 767px) {
  .hsd-rhbs-background {
    background: var(--hsd-rhbs-bkg-mobile);
    height: 250px;
    padding: 1rem 2rem;
    background-position: center;
    background-size: cover;
  }
  .hsd-rhbs-page-title {
    font-size: 28px !important;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
  }
  .hsd-rhbs-post-btn-cont {
    flex-flow: column;
  }
  .hsd-rhbs-post-banner-btn {
    margin-top: 8px;
  }
  .hsd-rhbs-banner-content {
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
  }
}

/* *** Hub CSS ***  */

.hsd-research-hub-hub-section {
  display: flex;
  flex-flow: column;
  gap: 32px;
  background: var(--hsd-rh-page-bkg-color);
  margin: 0 0 32px;
}
.hsd-rhhs-grid-cont {
  display: flex;
  flex-flow: column;
  gap: 16px;
  padding: 72px 0 0;
}
.hsd-rhhs-grid-cont-title {
  color: var(--hsd-rh-section-title-color);
  font-family: var(--hsd-rh-section-title-font-family);
  font-size: var(--hsd-rh-section-title-font-size) !important ;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto !important;
  padding: 0 2rem;

  font-style: normal;
  font-weight: 300;
  line-height: 48px;
  letter-spacing: -0.1px;
  text-transform: uppercase;
}
.hsd-rhhs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(333px, 1fr)) !important;
  gap: 21px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  padding: 2rem 1rem;
}
.hsd-rhhs-cards {
  position: relative;
  display: flex;
  flex-flow: column;
  border-radius: 0;
  overflow: hidden;
  border: var(--hsd-rh-card-border);
}
.hsd-rhhs-cad-image {
  width: 100%;
}
.hsd-rhhs-card-lower-sec {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  height: 100%;
  padding: 20px 0 32px 0;
  background: var(--hsd-rh-card-bkg-color);
}
.hsd-rhhs-card-title {
  color: var(--hsd-rh-card-title-color);
  text-align: center;
  font-family: var(--hsd-rh-card-title-font-family);
  font-size: var(--hsd-rh-card-title-font-size) !important;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  margin: 0 !important;
  padding: 0 8px;
}

.hsd-rhhs-btn-parent {
  width: 100%;
  display: flex;
  align-items: center;
  flex-flow: column;
  gap: 16px;
}

.hsd-rhhs-btn-cont {
  display: flex;
  flex-flow: row;
  gap: 4px;
  width: 100%;
  padding: 0 25px;
}

/* Start Modal Content */
.hsd-rhhs-trigger {
  margin: 0;
  cursor: pointer;
  width: calc(100% - 50px);
}

.hsd-rhhs-modal {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 90;
  background-color: var(--hsd-rhhs-modal-background);
  color: #000;
  padding: 20px;
}

.hsd-rhhs-modal-head {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  color: var(--hsd-rhhs-modal-heading-font-color);
}

.hsd-rhhs-modal-close {
  text-align: right;
  cursor: pointer;
}

:is(.hsd-rhhs-modal-content, .hsd-rhhs-modal-content-links) {
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
  color: var(--hsd-rhhs-modal-content-font-color);
}

.hsd-rhhs-modal-content {
  max-height: 88%;
  overflow-y: scroll;
  scrollbar-color: var(--hsd-rhhs-modal-scrollbar-color);
}
.hsd-rhhs-modal-content::-webkit-scrollbar-thumb {
  background: var(--hsd-rhhs-modal-webkit-scrollbar-thumb-color);
}
.hsd-rhhs-modal-content::-webkit-scrollbar-track {
  background: var(--hsd-rhhs-modal-webkit-scrollbar-track-color);
}
/* .hsd-rhhs-modal-content-links {
    max-height: 84%;
    overflow-y: scroll;
  } */

.hsd-rhhs-modal-content a {
  color: var(--hsd-rhhs-modal-link-font-color) !important;
  font-size: var(--hsd-rhhs-modal-link-font-size) !important;
  padding: 0.5rem;
  text-decoration: none !important;
  transition: all 0.25s;
  width: 100%;
}

.hsd-rhhs-modal-content a:hover {
  color: var(--hsd-rhhs-modal-link-font-color-hover) !important;
  background: var(--hsd-rhhs-modal-link-background-hover);
  border-bottom: 1px solid var(--hsd-rhhs-modal-link-font-color-hover);
}

@media screen and (max-width: 767px) {
  .hsd-rhhs-grid-cont-title {
    text-align: center;
  }
}
