.site-content.inner-pg-layout .ry-left p {
    line-height: 2;
}

.site-content.inner-pg-layout .ry-left p{
    margin-bottom: 1rem;
}

.site-content.inner-pg-layout .global-site__footer {
    margin: 0;
}

.site-content.inner-pg-layout .footer.style-3 .footer-top {
    min-height: auto;
}

.site-content.inner-pg-layout .site-footer__container {
    padding: 100px 0;
}

.site-content.inner-pg-layout .header__bottom-section {
    background: #333;
}

.site-content.inner-pg-layout .header__logo img {
    max-width: 10rem;
}

/** SERVICES LAYOUT **/

/* =========================
   GENERAL
========================= */

body.default #ry-pg-body.service-layout[data-interior-layout="Full Width"] > .ry-container {
    max-width: 100%;
}

.service-cards.implant-solutions .ry-container {
    width: min(1600px, 90%) !important;
    max-width: 100% !important;
}


.service-layout section {
  padding: 80px 0;
}

.service-layout h2:after {
  content: "";
  display: block;
  width: 80px;
  height: 2px;
  margin: 30px 0;
  background: currentColor;
}

.service-layout .service-intro h2::after,
.service-layout .service-cards h2::after {
  margin-left: auto;
  margin-right: auto;
}

.service-layout .service-split h2::after {
  margin-left: 0;
}

.service-layout p,
.service-layout li {
  line-height: 1.6;
}

.service-layout img {
  max-width: 100%;
  height: auto;
}

.service-layout .section-divider {
  width: 80px;
  height: 2px;
  margin: 30px 0;
  background: currentColor;
}


/* =========================
   INTRO
========================= */

.service-intro {
  text-align: center;
}

.service-intro__inner {
  margin: 0 auto;
}

.service-intro .section-divider {
  margin-left: auto;
  margin-right: auto;
}

.service-intro .btn {
  display: inline-block;
  margin-top: 30px;
}


/* =========================
   CARDS
========================= */

.service-cards {
  text-align: center;
}

.service-cards__header {
  margin-bottom: 50px;
}

.service-cards__header .section-divider {
  margin-left: auto;
  margin-right: auto;
}

.service-cards__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}

.service-cards__item {
  flex: 0 1 calc(33.333% - 16px);
  padding: 30px;
  border: 1px solid #ccc;
}

.service-cards__item h3 {
  margin-top: 0;
}


/* =========================
   SPLIT
========================= */

.service-split__row {
  display: flex;
  align-items: center;
  gap: 50px;
}

.service-split__media,
.service-split__content {
  flex: 1 1 50%;
}

.service-split__media img {
  display: block;
  width: 100%;
}

.service-split--reverse .service-split__row {
  flex-direction: row-reverse;
}

.service-split__content ul {
  margin: 0 0 30px;
  padding-left: 20px;
}


/* =========================
   TABLET
========================= */

@media (max-width: 991px) {

  .service-layout section {
    padding: 60px 0 !important;
  }

  .service-cards__item {
    flex-basis: calc(50% - 12px);
  }

  .service-split__row,
  .service-split--reverse .service-split__row {
    flex-direction: column;
    gap: 35px;
  }

  .service-split__media,
  .service-split__content {
    width: 100%;
  }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

  .service-layout h2:after {
    margin: 30px auto !important;
  }

  .service-layout section .section-cta div {
    align-items: center;
    justify-content: center;
}

  .service-layout section {
    padding: 45px 0 !important;
  }

  .service-cards__header {
    margin-bottom: 35px;
  }

  .service-cards__item {
    flex-basis: 100%;
  }

  .service-layout .section-divider {
    margin-top: 20px;
    margin-bottom: 20px;
  }

}

.service-intro__inner .section-cta div {
    align-items: center;
    justify-content: center;
}



#ry-pg-body.service-layout {
    padding: 0;
}

.service-layout section:nth-child(odd) {
    background: #fff;
}

.service-layout section:nth-child(even) {
    background: #f5f5f5;
}


.service-split.step-info h2:after {
    margin: 30px auto;
}

.service-split.step-info .service-split__content span {
    display: flex;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: transparent;
    align-items: center;
    justify-content: center;
    font-size: 200%;
    border: 2px solid #445e73;
}


@media (max-width: 767px) {
    .service-split.step-info .service-split__content span {
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
}
