/* Font */
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap");

/* Margin clearfix in navbar ------------------------------------------------------------- */
.vb-global-search-div > form {
  margin: 0px;
}
/* Endof Margin clearfix in navbar ------------------------------------------------------- */

/* Main Containers, Columns  ------------------------------------------------------------- */
.product__content {
  display: flex;
  flex-flow: row nowrap;
  padding-top: 120px;
}

.product__left-column {
  max-width: 755px;
  width: 60%;
}

.product__right-column {
  max-width: 500px;
  width: 40%;
}
/* Endof Columns ------------------------------------------------------------------------  */

/* Right side image section -------------------------------------------------------------  */
.product__image-container {
  margin-left: 50px;
}
.product__image-container--mobile {
  display: none;
}
/* Endof Right side image section -------------------------------------------------------  */

/* Breadcrumbs section ------------------------------------------------------------------  */
.product__top-navigation {
  display: flex;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 60px;
}

.product__top-navigation-link {
  display: flex;
  align-items: center;
  line-height: 1.25;
}

.product__top-navigation-link > a {
  font-weight: 400;
  opacity: 0.7;
}

.product__top-navigation-link:last-child > a {
  font-weight: 600;
  opacity: 1;
}

.product__top-navigation-link::after {
  content: "";
  background-image: url(../images/assets/arrow.svg);
  background-position: center;
  display: inline-block;
  width: 22px;
  height: 22px;
  margin: auto 15px;
}

.product__top-navigation-link:last-child::after {
  display: none;
}
/* Endof Breadcrumbs section ---------------------------------------------------------------  */

/* Title section ---------------------------------------------------------------------------- */
.product__title {
  border-bottom: solid 4px rgba(0, 102, 51, 0.4);
}

.product__title--no-icon {
  padding-top: 20px;
}

.product__title-logo {
  padding: 0;
  max-height: 20px;
  height: 20px;
}

.product__title-name {
  margin: 10px 0 0;
  font-weight: 500;
}

.product__title-vendor {
  font-weight: 500;
  font-size: 14px;
  opacity: 0.56;
  margin: 0 0 4px;
  color: #333;
  line-height: 20px;
  display: block;
}

.product__description-wrapper {
  padding: 20px 40px 10px 0;
}

.product__description > p {
  font-size: 16px;
  margin: 0;
}

.product__links {
  margin: 10px 0 0;
}

.product__links-title {
  margin: 0;
  font-weight: 600;
}

.product__link {
  margin: 0;
  font-weight: 500;
  display: block;
  width: fit-content;
}
/* Endof Title section ---------------------------------------------------------------------- */

/* Certificate section ---------------------------------------------------------------------- */
.product__certificate-section {
  padding-top: 50px;
}

.product__certificate-title {
  font-size: 24px;
  font-weight: 500;
  margin: 0 0 15px;
}

.product__certificate-container {
  width: 65%;
  display: flex;
  background-color: #f7fdf9;
  box-shadow: 0 1px 5px 0 rgba(39, 174, 96, 0.25);
  border-radius: 4px;
  padding: 20px;
}

.product__certificate-container--not-certified {
  box-shadow: 0 1px 5px 0 #c4c4c4;
  background-color: #f9f9f9;
}

.product__certificate-image {
  flex: 1 0 25%;
  display: flex;
  min-height: 100%;
}

.product__certificate-image > img {
  padding: 0;
  object-fit: contain;
}

.product__certificate-text {
  flex: 1 1 auto;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}

.product__certificate-status {
  font-size: 20px;
  color: #063;
  line-height: 1.11;
  font-weight: 600;
  margin: 0 0 5px;
}

.product__certificate-status--not-certified {
  font-weight: 500;
  color: #545454;
}

.product__certificate-status-text {
  font-size: 16px;
  line-height: 1.43;
  color: #000;
  margin: 10px 0 0;
  text-align: center;
}

.product__certificate-status-text > p {
  padding: 7px 14px;
  margin: 0;
  text-align: center;
}
/* Endof Certificate section ---------------------------------------------------------------- */

/* History section -------------------------------------------------------------------------- */
.product__history-section {
  padding-top: 90px;
}

.product__history-title {
  font-size: 24px;
  font-weight: 500;
  margin: 0 0 30px;
}

.product__history-subtitle {
  font-size: 18px;
  margin: 0 0 40px;
}
/* Timeline section ------------------------------------------------------------------------- */

.product__timeline-card-wrapper {
  margin-bottom: 30px;
  position: relative;
}

.product__timeline-card-wrapper:last-child {
  margin-bottom: 0;
}

.product__timeline-card {
  margin: 0 0 0 69px;
  font-size: 16px;
  display: flex;
  flex-flow: column nowrap;
  gap: 15px;
  padding: 15px;
  border-radius: 4px;
}

.product__timeline-card::before {
  content: "";
  position: absolute;
  width: 4px;
  top: 0;
  bottom: -30px;
  left: 12px;
  background-color: #c4c4c4;
  opacity: 0.4;
}

.product__timeline-card-wrapper:last-child > .product__timeline-card::before {
  bottom: 0;
}

.product__timeline-card--failed {
  box-shadow: 0 1px 5px 0 rgba(235, 87, 87, 0.25);
  background-color: #fefafa;
}

.product__timeline-card--failed::after {
  content: url(../images/assets/failed-round.svg);
  position: absolute;
  top: calc(50% - 20px);
  left: -6px;
  height: 40px;
}

.product__timeline-card--checked {
  box-shadow: 0 1px 5px 0 rgba(39, 174, 96, 0.25);
  background-color: #f7fdf9;
}

.product__timeline-card--checked::after {
  content: url(../images/assets/checked-round.svg);
  position: absolute;
  top: calc(50% - 20px);
  left: -6px;
  height: 40px;
}

.product__timeline-card--other {
  box-shadow: 0 1px 5px 0 rgba(255, 184, 6, 0.25);
  background-color: #fefcf5;
}

.product__timeline-card--other::after {
  content: url(../images/assets/change-round.svg);
  position: absolute;
  top: calc(50% - 20px);
  left: -6px;
  height: 40px;
}

.product__timeline-card > p {
  margin: 0;
}

.product__timeline-card-date {
  font-weight: 500;
}

.product__timeline-card-status-text {
  font-weight: 300;
}

.product__timeline-card-status-text--failed {
  color: #ea0000;
}

.product__timeline-card-status-text--checked {
  color: #006633;
}

.product__timeline-card-status {
  font-weight: 600;
}

.product__timeline-card-status::after {
  position: relative;
  left: 5px;
  bottom: -3px;
}

.product__timeline-card-status--failed::after {
  content: url(../images/assets/failed.svg);
}

.product__timeline-card-status--checked::after {
  content: url(../images/assets/checked.svg);
}

.product__timeline-card-text > p {
  margin: 0;
  display: inline;
}
/* Endof Timeline section ------------------------------------------------------------------- */

/* Pagination section ----------------------------------------------------------------------- */
.product__pagination {
  margin: 30px 0;
  display: flex;
  gap: 8px;
}

.product__pagination-button {
  width: 32px;
  height: 32px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.product__pagination-button img {
  padding: 0;
}

.product__pagination-button--previous img {
  transform: rotate(180deg);
}

.product__pagination-button .ltgray {
  opacity: 0.3;
}

.product__pagination-numbers {
  display: inline-flex;
  flex-flow: row nowrap;
  gap: 8px;
}

.product__pagination-numbers :is(.numbers, .ccm-pagination-ellipses) {
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
}

.product__pagination-numbers .numbers a {
  color: #212b36;
  font-weight: 500;
}

.product__pagination-numbers .active {
  border-radius: 4px;
  border: solid 1px #006633;
  color: #006633;
}
/* Endof Pagination section ----------------------------------------------------------------- */
/* Endof History section -------------------------------------------------------------------- */

/* OVERWRITE "toTop" button style ----------------------------------------------------------- */
#toTop {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  bottom: 15px !important;
  right: 15px !important;
  border: none !important;
  box-shadow: 0 4px 10px 0 rgba(9, 101, 46, 0.5);
}

.glyphicon {
  top: 6px !important;
  left: 1px !important;
}
/* Endof OVERWRITE "toTop" button style------------------------------------------------------ */

/* Responsive changes betweeen the desktop and mobile views --------------------------------- */
@media screen and (max-width: 996px) {
  .product__left-column {
    width: 100%;
  }

  .product__right-column {
    display: none;
  }

  .product__image-container--mobile {
    display: block;
    margin-top: 40px;
    padding: 0;
  }

  .product__image-container--mobile > img {
    padding: 0;
  }
}

@media screen and (max-width: 600px) {
  .product__content {
    padding-top: 100px;
  }

  .product__top-navigation {
    top: 40px;
  }

  .product__top-navigation-link {
    font-size: 12px;
    text-align: left;
  }

  .product__top-navigation-link > a {
    max-width: 70px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .product__top-navigation-link::after {
    margin: auto 8px;
  }
}
/* Endof Responsive changes betweeen the desktop and mobile views --------------------------- */

/* Responsive design for mobile view -------------------------------------------------------- */
@media screen and (max-width: 375px) {
  /* Main Containers, Columns  ---------------------------------------------------------------- */
  .product__content {
    max-width: 375px;
    margin: 0;
  }

  .product__left-column {
    max-width: 375px;
    width: 100%;
  }

  .product__right-column {
    display: none;
  }
  /* Endof Columns ---------------------------------------------------------------------------  */

  /* Title section ---------------------------------------------------------------------------- */
  .product__title-name {
    margin: 10px 0;
  }

  .product__links {
    font-size: 16px;
    margin-top: 30px;
  }

  .product__link {
    margin-bottom: 22px;
  }
  /* Endof Title section ---------------------------------------------------------------------- */

  /* Certificate section ---------------------------------------------------------------------- */
  .product__certificate-section {
    padding-top: 0;
    margin-top: 30px;
  }

  .product__certificate-container {
    width: 345px;
  }

  .product__certificate-status {
    font-size: 16px;
    line-height: 1.25;
    margin: 0;
  }

  .product__certificate-last-update--not-certified {
    padding: 0;
  }
  /* Endof Certificate section ---------------------------------------------------------------- */

  /* History section -------------------------------------------------------------------------- */
  .product__history-section {
    padding-top: 40px;
  }

  .product__history-title {
    font-size: 22px;
  }

  .product__history-subtitle {
    font-size: 16px;
  }
  /* Timeline section ------------------------------------------------------------------------- */
  .product__timeline-card-wrapper {
    margin-bottom: 40px;
  }

  .product__timeline-card {
    margin-left: 59px;
  }

  .product__timeline-card:before {
    left: 22px;
    bottom: -40px;
  }

  .product__timeline-card:after {
    left: 4px;
  }
  /* Endof Timeline section ------------------------------------------------------------------- */

  /* Pagination section ----------------------------------------------------------------------- */
  .product__pagination {
    margin: 40px 0;
  }

  .product__pagination:last-child {
    margin-bottom: 0;
  }
  /* Endof Pagination section ----------------------------------------------------------------- */
  /* Endof History section -------------------------------------------------------------------- */
}

