/* Added fallbacks to help with CLS, feel free to remove if it doesn't help on your project */
/* Colours */
/* Fluid heading sizes - set your min/max sizes and you're done! */
/* Some device sizes to use with min-width */
/* adjusted breakpoints for above */
/* 100% widths look better than "Snapping" IMO */
/* Utility */
/* Additional Spacers -- don't think you'll need more than 7, but if you do -- maybe just use a custom class  :)  */
/* Added fallbacks to help with CLS, feel free to remove if it doesn't help on your project */
/* Colours */
/* Fluid heading sizes - set your min/max sizes and you're done! */
/* Some device sizes to use with min-width */
/* adjusted breakpoints for above */
/* 100% widths look better than "Snapping" IMO */
/* Utility */
/* Additional Spacers -- don't think you'll need more than 7, but if you do -- maybe just use a custom class  :)  */
#hero {
  display: flex;
  align-items: center;
  min-height: 725px;
  padding-top: 128px;
  padding-bottom: 3em;
}
#hero h1, #hero h2, #hero h3, #hero h4, #hero h5, #hero h6, #hero p, #hero a {
  color: #FFFFFF;
}
#hero h1 {
  text-transform: capitalize;
}
#hero::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 0;
  top: 0;
  background: linear-gradient(0deg, rgba(25, 51, 72, 0.6) 0%, rgba(25, 51, 72, 0.6) 100%);
}
#hero .container {
  position: relative;
  z-index: 1;
}
#hero picture.main-image {
  max-width: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  height: 100% !important;
  z-index: -1;
  top: 0;
}
#hero picture.main-image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  min-height: 725px;
  object-position: top;
}
#hero .new-patients {
  font-weight: 600;
  line-height: normal;
  letter-spacing: 2.4px;
  text-transform: uppercase;
}
#hero .container-buttons {
  flex-direction: column;
}
#hero .rank-math-breadcrumb {
  position: absolute;
  bottom: 2em;
  right: 4em;
}
#hero .rank-math-breadcrumb a {
  border-bottom: 1px solid #FFFFFF;
}
@media screen and (min-width: 420px) {
  #hero .container-buttons {
    flex-direction: row;
  }
}
@media screen and (min-width: 1025px) {
  #hero {
    min-height: 100vh;
    padding-top: unset;
    padding-bottom: unset;
    padding-top: 112px;
  }
  #hero h1 {
    padding-right: 40px;
  }
  #hero .main-content p {
    max-width: 692px;
  }
  #hero picture.main-image img {
    min-height: 100vh;
    object-position: center;
  }
  #hero::before {
    display: none;
  }
  #hero p.p-large {
    max-width: 692px;
  }
}

.icon-icon-arrow-right {
  color: #9ac2de;
}

/*About*/
#about p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#about .container-image {
  height: 100%;
}
#about picture {
  height: 100% !important;
}
#about picture img {
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}
#about h2 {
  text-transform: capitalize;
}
@media screen and (min-width: 1025px) {
  #about .main-content {
    padding-left: 4em;
  }
  #about .main-content {
    min-height: 736px;
  }
}
@media screen and (min-width: 1440px) {
  #about .main-content {
    padding-left: 8em;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1920px) {
  #about picture img {
    position: absolute;
    left: 2em;
    max-width: 47%;
    height: 100%;
    object-fit: cover;
  }
}

/*Comprehensive*/
#comprehensive picture {
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  z-index: -1;
  top: 0;
}
#comprehensive picture img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: cover;
}
#comprehensive p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#comprehensive h2, #comprehensive h3, #comprehensive h4, #comprehensive h5, #comprehensive h6, #comprehensive p {
  color: #FFFFFF;
}
#comprehensive .main-container-top {
  max-width: 1088px;
  margin-left: auto;
  margin-right: auto;
}
#comprehensive .icon-icon-dentist,
#comprehensive .icon-icon-shield-tooth,
#comprehensive .icon-icon-tooth-sparkle,
#comprehensive .icon-icon-chair {
  color: #9ac2de;
  font-size: 104px;
}
#comprehensive .container-icon {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
#comprehensive .container-card p {
  max-width: 380px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1025px) {
  #comprehensive {
    min-height: 667px;
  }
}

/*Dentistry and Emergency*/
#dentistry,
#emergency {
  margin-top: 4em;
}
#dentistry p.h6,
#emergency p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#dentistry .content-top,
#emergency .content-top {
  max-width: 1088px;
  margin-left: auto;
  margin-right: auto;
}
#dentistry .main-content,
#emergency .main-content {
  margin-top: 24px;
}
#dentistry .card-container picture,
#emergency .card-container picture {
  overflow: hidden;
  border-radius: 12px;
  width: 100% !important;
  max-width: 100% !important;
}
#dentistry .card-container picture img,
#emergency .card-container picture img {
  transition: transform 0.4s ease, filter 0.4s ease;
  object-fit: cover;
  display: block;
  width: 100%;
}
#dentistry .card-container picture img:hover,
#emergency .card-container picture img:hover {
  transform: scale(1.1);
}
#dentistry .card-container,
#emergency .card-container {
  display: flex;
  flex-direction: column;
}
#dentistry .card-container .main-content,
#emergency .card-container .main-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-top: 24px;
}
#dentistry .card-container .main-content .link-blue,
#emergency .card-container .main-content .link-blue {
  margin-top: auto;
}
#dentistry .row,
#emergency .row {
  align-items: stretch;
}
@media screen and (min-width: 1025px) {
  #dentistry,
  #emergency {
    margin-top: 7em;
  }
  #dentistry .line-divider,
  #emergency .line-divider {
    height: 1px;
    width: calc(100% - 2em);
    background: #D1DAE1;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3em;
  }
}

/*Restorative and Cosmetic*/
#cosmetic,
#restorative {
  background: #F6F6F6;
  padding-top: 4em;
  padding-bottom: 4em;
  margin-top: 4em;
}
#cosmetic p.h6,
#restorative p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#cosmetic .container-cards,
#cosmetic .main-content,
#restorative .container-cards,
#restorative .main-content {
  max-width: 1088px;
  margin-left: auto;
  margin-right: auto;
}
#cosmetic .main-content,
#restorative .main-content {
  margin-top: 24px;
}
#cosmetic .container-cards,
#restorative .container-cards {
  align-items: stretch;
}
#cosmetic .container-cards picture,
#restorative .container-cards picture {
  overflow: hidden;
  border-radius: 12px;
  width: 100% !important;
  max-width: 100% !important;
}
#cosmetic .container-cards picture img,
#restorative .container-cards picture img {
  transition: transform 0.4s ease, filter 0.4s ease;
  object-fit: cover;
  display: block;
  width: 100%;
}
#cosmetic .container-cards picture img:hover,
#restorative .container-cards picture img:hover {
  transform: scale(1.1);
}
#cosmetic .container-cards .main-content,
#restorative .container-cards .main-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-top: 24px;
}
#cosmetic .container-cards .main-content .link-blue,
#restorative .container-cards .main-content .link-blue {
  margin-top: auto;
}
@media screen and (min-width: 1025px) {
  #cosmetic,
  #restorative {
    padding-top: 7em;
    margin-top: 7em;
    padding-bottom: 7em;
  }
}

/*Cosmetic*/
#cosmetic {
  background: #FFFFFF;
  padding-top: 4em;
  padding-bottom: 4em;
  margin-top: 0;
}
@media screen and (min-width: 1025px) {
  #cosmetic {
    padding-top: 7em;
    padding-bottom: 7em;
  }
}

/*Emergency*/
#emergency {
  background: #F6F6F6;
}
@media screen and (min-width: 1025px) {
  #emergency {
    margin-top: 0;
    padding-top: 7em;
    padding-bottom: 7em;
  }
}

/*Testimonials*/
#testimonials .container-content {
  max-width: 1088px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
#testimonials picture {
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  z-index: -1;
  top: 0;
}
#testimonials picture img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
#testimonials p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#testimonials h2, #testimonials h3, #testimonials h4, #testimonials h5, #testimonials h6, #testimonials p {
  color: #FFFFFF;
}
#testimonials .testimonial-item {
  background: #FFFFFF;
  padding: 32px;
  border-radius: 12px;
}
#testimonials .testimonial-item h2, #testimonials .testimonial-item h3, #testimonials .testimonial-item h4, #testimonials .testimonial-item h5, #testimonials .testimonial-item h6, #testimonials .testimonial-item p {
  color: #091722;
}
#testimonials .testimonial-item .author {
  margin-bottom: 12px;
}
#testimonials .testimonial-item .container-stars {
  gap: 6px;
  margin-bottom: 12px;
}
#testimonials .testimonial-text {
  overflow: hidden;
  transition: max-height 0.4s ease;
}
#testimonials .testimonial-text.is-collapsed {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#testimonials .read-more-link {
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  font-weight: 600;
  color: #091722;
  text-decoration: none;
  width: fit-content;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#testimonials .read-more-link:hover {
  text-decoration: none;
}
#testimonials .read-more-link i {
  color: #9ac2de;
  transition: transform 0.2s ease;
  font-size: 11px;
  margin-left: 5px;
}
#testimonials .read-more-link.is-open i {
  transform: rotate(180deg);
}
#testimonials .owl-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 1em;
}
#testimonials .owl-dot span {
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #E8EBED;
}
#testimonials .owl-dot.active span {
  background: #9ac2de;
}
#testimonials .testimonial-item {
  margin-bottom: 2em;
}
@media screen and (min-width: 641px) {
  #testimonials .testimonial-item {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1025px) {
  #testimonials {
    min-height: 970px;
  }
  #testimonials .owl-dots {
    margin-top: 4em;
    margin-bottom: 4em;
  }
}

/*FAQ*/
#faq [class^=icon-icon] {
  font-size: 15px;
  color: #9ac2de;
  padding-top: 5px;
}
#faq p.h6 {
  text-transform: uppercase;
  color: #B9A77B;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: 2.4px;
}
#faq picture img {
  border-radius: 12px;
}
#faq .question {
  cursor: pointer;
}
#faq .question:hover {
  color: #66829A;
}
#faq .container-faq {
  border-top: 1px solid #D1DAE1;
}
#faq .container-faq:last-of-type {
  border-bottom: 1px solid #D1DAE1;
}
#faq .answer {
  display: none;
  margin-top: 10px;
}
#faq h2 {
  margin-bottom: 32px;
}
#faq .btn {
  margin-top: 2.5em;
}
#faq .answer {
  margin-left: 2em;
}
@media screen and (min-width: 1025px) {
  #faq .main-content {
    padding-right: 4em;
    min-height: 920px;
  }
  #faq [class^=icon-icon] {
    padding-top: 0;
  }
}
@media screen and (min-width: 1440px) {
  #faq .main-content {
    padding-right: 8em;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1920px) {
  #faq picture img {
    position: absolute;
    right: 2em;
    max-width: 47%;
    height: 100%;
    object-fit: cover;
  }
}