@font-face {
  font-family: "Fa 400";
  src: url('../fonts/fa-regular-400.eot') format("embedded-opentype"), url('../fonts/fa-regular-400.woff') format("woff"), url('../fonts/fa-regular-400.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}

@font-face {
  font-family: "Fa brands 400";
  src: url('../fonts/fa-brands-400.eot') format("embedded-opentype"), url('../fonts/fa-brands-400.woff') format("woff"), url('../fonts/fa-brands-400.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}

@font-face {
  font-family: "Fa solid 900";
  src: url('../fonts/fa-solid-900.eot') format("embedded-opentype"), url('../fonts/fa-solid-900.woff') format("woff"), url('../fonts/fa-solid-900.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}

:root {
  --lavender: #70628d;
  --thistle: #d2c6eb;
  --white: white;
  --almost-black: #202020;
  --deep-purple: #34214e;
  --dark-slate-grey: #393939;
  --black: black;
}

.w-pagination-wrapper {
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.w-pagination-previous {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-previous-icon {
  margin-right: 4px;
}

.w-pagination-next {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-next-icon {
  margin-left: 4px;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

body {
  color: #393939;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 150%;
}

h1 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: Josefin Sans, sans-serif;
  font-size: 60px;
  font-weight: 400;
  line-height: 120%;
}

h2 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: Josefin Sans, sans-serif;
  font-size: 52px;
  font-weight: 400;
  line-height: 120%;
}

h3 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: Josefin Sans, sans-serif;
  font-size: 44px;
  font-weight: 400;
  line-height: 120%;
}

h4 {
  margin-top: 0;
  font-family: Josefin Sans, sans-serif;
  font-size: 36px;
  font-weight: 400;
  line-height: 120%;
}

h5 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: Josefin Sans, sans-serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 120%;
}

h6 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: Josefin Sans, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 120%;
}

p {
  margin-bottom: 1rem;
  line-height: 200%;
}

a {
  color: var(--lavender);
  text-decoration: none;
  transition: all .3s;
}

a:hover {
  color: var(--thistle);
}

ul {
  margin-top: 0;
  margin-bottom: 1rem;
  padding-left: 40px;
}

img {
  max-width: 100%;
  display: inline-block;
}

.cust-container {
  width: 90vw;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.row {
  flex-wrap: wrap;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.row.a-center {
  align-items: center;
}

.row.j-center {
  justify-content: center;
}

.row.flex-vert {
  flex-direction: column;
}

.row.j-end {
  justify-content: flex-end;
}

.row.j-around {
  justify-content: space-around;
}

.row.a-stretch {
  align-items: stretch;
}

.col {
  padding-left: 15px;
  padding-right: 15px;
}

.col.md12 {
  width: 100%;
}

.col.md8 {
  width: 100%;
  max-width: 66.666%;
}

.col.mdfill {
  flex: 1;
}

.col.sm12.mb-sm-1.space {
  margin-bottom: 1rem;
}

.col.md6 {
  width: 100%;
  max-width: 50%;
}

.col.main {
  flex: 1;
}

.col.sidebar {
  z-index: 5;
  width: 33.333%;
  max-width: 520px;
  margin-top: -160px;
  position: sticky;
  top: 120px;
}

.col.nav-wrap {
  display: flex;
}

.col.nav-sm-wrap {
  justify-content: center;
  align-items: center;
  padding-left: 0;
  display: none;
}

.col.logo-wrap {
  width: 150px;
  display: flex;
}

.col.mobile-nav-toggle-wrap {
  display: none;
}

.col.welcome-text {
  width: 50%;
  max-width: 530px;
  display: block;
}

.col.welcome-img-wrap {
  width: 50%;
  max-width: 450px;
  height: 467px;
}

.col.home-services-bg {
  background-image: linear-gradient(#34214e73, #34214e73), url('../images/bg-home-service-md.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 60px;
}

.col.home-service-card-wrap {
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
  display: flex;
}

.col.home-service-card-wrap.mb-0 {
  margin-bottom: 0;
}

.col.new-patient-text {
  text-align: center;
  width: 100%;
  max-width: 510px;
  margin-top: 50px;
  margin-left: 4vw;
}

.col.affordable-wrap {
  width: 100%;
  max-width: 58.333%;
}

.col.home-contact-text {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 730px;
  display: flex;
}

.col.footer-map {
  width: 100%;
  max-width: 58.333%;
  height: 590px;
  padding-left: 0;
  padding-right: 0;
}

.col.footer-contact-content {
  color: var(--white);
  background-image: linear-gradient(#000000b3, #000000b3), url('../images/homepage-slide-2.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 41.666%;
  display: flex;
}

.col.footer-sm-wrap {
  justify-content: space-between;
  align-items: center;
  width: 250px;
  margin-bottom: 1rem;
  display: flex;
}

.col.contact-content {
  width: 55%;
}

.col.contact-sidebar {
  width: 45%;
}

.col.col-cta {
  flex: 0 auto;
  width: 100%;
  max-width: 1140px;
}

.col.inner-banner-content {
  width: 100%;
  max-width: 50%;
}

.col.inner-banner-content-alt {
  width: 100%;
  max-width: 66.666%;
}

.col.bio-img {
  width: 50%;
  max-width: 450px;
}

.col.bio-text {
  flex: 1;
}

.col.service-img-wrap-alt {
  max-width: 250px;
}

.col.service-text-wrap-alt {
  flex: 1;
}

.col.thanks-text {
  width: 100%;
  max-width: 520px;
}

.mb-1 {
  margin-bottom: 1rem;
}

.mb-2 {
  margin-bottom: 2rem;
}

.copyright {
  background-color: var(--almost-black);
  color: var(--white);
  text-align: center;
  justify-content: center;
  align-items: center;
  height: 100px;
  padding-top: .5rem;
  padding-bottom: .5rem;
  font-size: 12px;
  display: flex;
}

.btn {
  background-image: linear-gradient(to right, var(--deep-purple), var(--lavender) 75%);
  color: var(--white);
  text-align: center;
  letter-spacing: 3px;
  text-transform: uppercase;
  border: 1px solid #0000;
  border-radius: 1000px;
  padding: 1rem 2.5rem;
  font-weight: 300;
  transition: all .3s;
}

.btn:hover {
  border-color: var(--deep-purple);
  background-image: linear-gradient(to right, var(--deep-purple), var(--lavender) 75%);
  padding-left: 2.75rem;
  padding-right: 2.75rem;
}

.btn.btn-link {
  z-index: 2;
  position: relative;
}

.btn.btn-link:hover, .btn.btn-link.d-sm-block:hover {
  color: var(--white);
}

.btn.btn-ghost {
  z-index: 1;
  border-color: var(--lavender);
  background-image: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 5px auto auto 4px;
}

.btn.btn-link-white {
  z-index: 2;
  background-image: linear-gradient(to bottom, var(--white), var(--white));
  color: var(--lavender);
  position: relative;
}

.btn.btn-link-white:hover {
  border-color: var(--white);
  background-image: linear-gradient(to bottom, var(--thistle), var(--thistle));
}

.btn.btn-link-white.btn-contact-form {
  border-color: var(--thistle);
  background-color: var(--deep-purple);
  color: var(--white);
  background-image: linear-gradient(#0000, #0000);
  width: 100%;
}

.btn.btn-link-white.btn-contact-form:hover {
  background-color: var(--lavender);
}

.btn.btn-ghost-white {
  z-index: 1;
  border-color: var(--white);
  background-image: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 5px auto auto 4px;
}

.btn.btn-lavender:hover {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.btn.btn-lavender.d-block {
  background-color: var(--lavender);
  background-image: none;
}

.btn.btn-lavender.d-block:hover {
  background-color: var(--thistle);
  color: var(--white);
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.btn.small {
  text-align: center;
  flex: 0 auto;
  order: 1;
  align-self: center;
  margin-top: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: block;
}

.d-block {
  display: block;
}

.navbar {
  background-color: var(--white);
  width: 100%;
  transition: top .3s;
  position: fixed;
  top: 0;
}

.fa-solid {
  font-family: "Fa solid 900", sans-serif;
}

.fa-solid.recommend-star {
  color: #f9db66;
  margin-right: .25rem;
}

.fa-solid.list-icon {
  color: var(--lavender);
  text-align: right;
  width: 20px;
  margin-right: .5rem;
  line-height: 200%;
}

.btn-icon {
  display: inline-block;
}

.utility-page-wrap {
  background-color: #d2c6eb24;
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  padding-top: 290px;
  padding-bottom: 200px;
  display: flex;
}

.utility-page-content {
  flex-direction: column;
  display: flex;
}

.copyright-text {
  display: inline-block;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.ada-content-wrapper {
  max-width: 960px;
  margin: 160px auto 3rem;
}

.privacy-notice {
  max-width: 900px;
  margin: 160px auto 3rem;
}

.content {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.banner {
  justify-content: center;
  align-items: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  display: flex;
  position: relative;
}

.banner.interior-banner {
  text-align: left;
  justify-content: flex-start;
  height: 500px;
}

.banner.interior-banner.about-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/about-banner.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
}

.banner.interior-banner.pediatric-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/pediatric-banner.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
}

.banner.interior-banner.cosmetic-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/cosmetic-banner.webp');
  background-position: 0 0, 100%;
  background-size: auto, cover;
}

.banner.interior-banner.general-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/general-banner.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
}

.banner.interior-banner.tech-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/tech-banner.webp');
  background-position: 0 0, 100%;
  background-size: auto, cover;
}

.banner.interior-banner.patient-banner {
  background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/financial-banner.webp');
  background-position: 0 0, 100%;
  background-size: auto, cover;
}

.banner.interior-banner.contact-banner {
  background-image: linear-gradient(#70628d87, #70628d87), url('../images/contact-banner-new.webp');
  background-position: 0 0, 0%;
  background-size: auto, cover;
}

.banner.home-banner {
  text-align: center;
  flex-direction: column;
  height: 100vh;
  max-height: 900px;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
}

.banner.blog-banner {
  text-align: center;
  padding-top: 8rem;
}

.mb_5 {
  margin-bottom: .5rem;
}

.mb-0 {
  margin-bottom: 0;
}

.collection-item {
  flex-direction: column;
  margin-bottom: 1rem;
  display: flex;
}

.h2-blog-archive {
  margin-bottom: 0;
  font-size: 18px;
}

.date-blog-archive {
  color: #888;
  margin-bottom: .5rem;
  font-size: 16px;
}

.excerpt-blog-archive {
  color: #333;
  margin-bottom: 1rem;
  font-size: 14px;
  line-height: 170%;
}

.read-more {
  color: #333;
  margin-top: auto;
  font-size: 16px;
  display: flex;
}

.read-more-text {
  margin-right: .5rem;
}

.collection-list {
  flex-wrap: wrap;
  display: flex;
}

.link-blog-archive {
  flex-direction: column;
  height: 100%;
  margin-bottom: 1rem;
  display: flex;
}

.link-blog-sidebar {
  padding-top: 5px;
  padding-bottom: 5px;
  display: block;
}

.h1-blog-tite {
  margin-bottom: 0;
  font-size: 30px;
}

.h4-blog-sidebar {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
}

.browser-detect {
  z-index: 9999;
  background-color: #00000096;
  justify-content: center;
  align-items: center;
  padding: 220px 150px;
  display: none;
  position: fixed;
  inset: 0%;
}

.browser_title-2 {
  color: #7a849e;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
}

.browser_wrap {
  justify-content: space-between;
  align-items: flex-start;
  max-width: 360px;
  min-height: 50px;
  margin: 25px auto 30px;
  display: flex;
}

.browser_link {
  border-radius: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 24%;
  padding: 15px;
  text-decoration: none;
  transition: background-color .2s cubic-bezier(.455, .03, .515, .955);
  display: flex;
}

.browser_link:hover {
  background-color: #def7ff;
}

.browser_link.preferred {
  box-shadow: -2px -2px 3px 3px #fff, 1px 1px 3px 2px #e3e3e3;
}

.browser-warning {
  background-color: #fcfcfc;
  border-radius: 15px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px;
  display: block;
  box-shadow: 11px 11px 55px #355aa41a;
}

.browser_header {
  color: #20355a;
  text-align: center;
  letter-spacing: -.2px;
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 32px;
  line-height: 40px;
}

.text-block-6 {
  color: #b6b6b6;
  font-size: 14px;
}

.browser_details {
  color: #7a849e;
  text-align: center;
  letter-spacing: -.2px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
}

.logo {
  width: 120px;
  height: 90px;
  display: block;
}

.link_span {
  color: #2e92e9;
  text-decoration: none;
}

.recommend-message {
  color: #b6b6b6;
  white-space: nowrap;
  justify-content: center;
  margin-bottom: -20px;
  font-size: 12px;
  display: flex;
  position: relative;
  top: 19px;
}

.courtesy-block {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.courtesy-logo {
  width: 50px;
  margin-left: 10px;
}

.thanks {
  background-color: #d2c6eb24;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 290px;
  padding-bottom: 200px;
  display: flex;
}

.nav-item {
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 10px;
  line-height: 12px;
  display: flex;
}

.nav-item:hover {
  color: var(--lavender);
}

.nav-item.w--current {
  color: var(--dark-slate-grey);
}

.nav-item.btn-nav-item {
  background-color: var(--deep-purple);
  color: var(--white);
  border-radius: 1000px;
  margin-top: 25px;
  margin-bottom: 25px;
}

.nav-dd.w--open {
  border: 1px dashed var(--lavender);
  background-color: #d2c6eb80;
  border-radius: 25px;
  padding: 15px;
  top: 105px;
}

.nav-toggle {
  align-items: center;
  height: 100%;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 20px;
  transition: all .3s;
  display: flex;
}

.nav-toggle:hover {
  color: var(--lavender);
}

.nav-dd-item {
  color: var(--thistle);
  font-weight: 400;
}

.nav-dd-item:hover {
  background-color: #34214e80;
}

.nav-dd-item.w--current {
  color: var(--thistle);
}

.content-wrapper {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.small {
  font-size: 14px;
}

.browser {
  color: #3277bc;
  justify-content: center;
  align-items: center;
  width: 55px;
  height: 55px;
  margin-bottom: 1rem;
  font-family: "Fa brands 400", sans-serif;
  font-size: 40px;
  line-height: 100%;
  display: flex;
}

.browser.ie {
  color: #46afe8;
  width: 70px;
  height: 70px;
  margin-left: auto;
  margin-right: auto;
  font-size: 60px;
}

.browser.chrome {
  color: #db4437;
}

.browser.safari {
  color: #0fb5ee;
}

.browser.firefox {
  color: #ff9500;
}

.nav-menu {
  text-transform: uppercase;
  width: 100%;
  font-family: Josefin Sans, sans-serif;
  font-weight: 700;
  display: flex;
  left: auto;
  right: auto;
}

.nav-row {
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  height: 90px;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.nav-toggle-text {
  line-height: 14px;
}

.sm-link {
  color: var(--lavender);
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-family: "Fa brands 400", sans-serif;
  display: flex;
}

.sm-link:hover {
  background-color: var(--deep-purple);
  color: var(--thistle);
}

.brand {
  display: flex;
}

.h5-sub {
  letter-spacing: 3px;
  text-transform: uppercase;
  font-family: Nunito, sans-serif;
  font-size: 24px;
}

.h5-sub.mb3 {
  margin-bottom: 3rem;
}

.home-banner-container {
  z-index: 5;
  color: var(--white);
  width: 90vw;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}

.home-banner-slider {
  width: 100%;
  height: 100%;
  position: absolute;
}

.d-none {
  display: none;
}

.home-banner-slider-nav {
  justify-content: center;
  align-items: center;
  display: flex;
  bottom: 30px;
}

.slide {
  background-image: linear-gradient(#70628d80, #70628d80), url('../images/homepage-slide-1_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.slide-2 {
  background-image: linear-gradient(#70628d80, #70628d80), url('../images/homepage-slide-2_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.nav-dd-inner-wrap {
  background-color: var(--lavender);
  border-radius: 13px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.dd-subnav-wrap {
  width: 100%;
}

.dd-subnav-wrap:hover {
  background-color: #34214e80;
}

.dd-subnav-wrap-toggle {
  color: var(--thistle);
  padding-top: 10px;
  padding-bottom: 10px;
  font-weight: 400;
  line-height: 14px;
  display: flex;
}

.dropdown-list {
  position: relative;
}

.dropdown-list.w--open {
  background-color: #34214e80;
}

.subnav-link {
  color: var(--thistle);
  font-weight: 400;
}

.subnav-link:hover {
  background-color: var(--deep-purple);
}

.welcome {
  padding-top: 3rem;
  padding-bottom: 0;
  overflow: hidden;
}

.welcome-img-wrap {
  height: 557px;
  display: block;
  position: relative;
}

.circle {
  border-radius: 1000px;
}

.circle.portrait {
  z-index: 3;
  width: 190px;
  max-width: 190px;
  height: 190px;
  position: absolute;
  inset: 0% auto auto 0%;
  box-shadow: 2px 15px 15px #00000047;
}

.circle.lobby {
  border: 15px solid var(--white);
  width: 328.4px;
  height: 328.4px;
  position: relative;
}

.circle.invisalign {
  z-index: 2;
  border: 8px solid var(--deep-purple);
  width: 130px;
  max-width: 130px;
  height: 130px;
  position: absolute;
  top: 320px;
  left: 110px;
  box-shadow: 0 0 0 15px #70628d66;
}

.circle.lobby-wrap {
  z-index: 2;
  border: 1px dashed var(--lavender);
  width: 100%;
  max-width: 330px;
  height: auto;
  position: absolute;
  top: 50px;
  left: 90px;
}

.tiny-title {
  color: var(--lavender);
  letter-spacing: 3px;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 700;
}

.tiny-title.text-white {
  color: var(--white);
}

.text-purple {
  color: var(--deep-purple);
}

.welcome-row {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.btn-wrap {
  display: inline-block;
  position: relative;
}

.home-service-card {
  background-color: var(--white);
  color: var(--lavender);
  justify-content: space-between;
  align-items: center;
  width: 400px;
  height: 200px;
  padding: 2rem;
  display: flex;
}

.home-service-card:hover {
  box-shadow: 0 0 10px 3px #00000080;
}

.home-service-card-icon {
  background-color: var(--lavender);
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  display: flex;
}

.home-service-card-text {
  width: 60%;
}

.home-service-title {
  color: var(--dark-slate-grey);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 700;
}

.service-card-text {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 130%;
}

.home-service-row {
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.icon-white-cosmetic {
  width: 60px;
  height: 32.25px;
}

.icon-white-implant {
  width: 40px;
  height: 54.3889px;
}

.icon-white-pediatric {
  width: 60px;
  height: 60px;
}

.icon-white-emergency {
  width: 65px;
  height: 59.2083px;
  margin-left: 12px;
}

.icon-white-preventative {
  width: 55px;
  height: 56.4028px;
}

.home-services {
  margin-bottom: -80px;
  overflow: hidden;
}

.h2-home-services {
  color: var(--white);
  background-color: #d2c6eb99;
  width: 60vw;
  height: 250px;
  margin-bottom: -9rem;
  margin-left: auto;
  padding-top: 20px;
  padding-left: 40px;
  font-size: 70px;
}

.home-services-container {
  z-index: 5;
  width: 90vw;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}

.home-new-patients {
  background-image: url('../images/bg-home-new-patients-md.webp');
  background-position: 50%;
  background-size: cover;
  height: 600px;
  overflow: hidden;
}

.home-new-patients-container {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 90vw;
  max-width: 1640px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
}

.affordable {
  background-image: url('../images/bg-home-affordable-hd.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: center;
  align-items: center;
  height: 740px;
  display: flex;
  overflow: hidden;
}

.dashed-card {
  border: 1px dashed var(--lavender);
  border-radius: 25px;
  padding: 1rem;
}

.dashed-card-body {
  color: var(--white);
  text-align: center;
  background-color: #34214ef2;
  border-radius: 13px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 3rem;
  display: flex;
}

.dashed-card-body.contact-card {
  text-align: left;
  align-items: flex-start;
  padding: 2rem 1rem;
}

.home-contact {
  justify-content: center;
  align-items: center;
  height: 350px;
  display: flex;
  overflow: hidden;
}

.home-contact-title {
  color: var(--deep-purple);
  letter-spacing: 6px;
  text-transform: uppercase;
  font-size: 36px;
}

.text-lavener {
  color: var(--lavender);
}

.copyright-link {
  color: #ffffff80;
}

.copyright-link:hover {
  color: #fff;
}

.cust-container-fluid {
  width: 100vw;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.footer-map-wrap {
  height: 100%;
}

.footer-logo {
  width: 130px;
  height: 180.694px;
  margin-bottom: 1rem;
}

.sm-link-footer {
  color: var(--white);
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-family: "Fa brands 400", sans-serif;
  display: flex;
}

.sm-link-footer:hover {
  background-color: var(--deep-purple);
  color: var(--thistle);
}

.h5-footer {
  margin-bottom: 1rem;
  font-family: Nunito, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.footer-link {
  color: var(--white);
  margin-bottom: 1rem;
  display: block;
}

.footer-link:hover {
  color: var(--thistle);
}

.footer-link.phone {
  font-size: 22px;
}

.h2-internal {
  color: var(--lavender);
  font-size: 42px;
}

.contact-link {
  color: var(--thistle);
  max-width: 300px;
  margin-bottom: 1rem;
  display: flex;
}

.contact-link:hover {
  color: var(--lavender);
}

.contact-link-text {
  margin-bottom: 0;
}

.h4-interior {
  font-size: 32px;
}

.h6-interior {
  color: var(--thistle);
}

.contact-form {
  width: 100%;
  margin-bottom: 0;
}

.form-input {
  border: 1px solid var(--lavender);
  background-color: var(--thistle);
  color: var(--deep-purple);
  border-radius: 1000px;
  height: 45px;
  margin-bottom: 1rem;
}

.form-textarea {
  border: 1px solid var(--lavender);
  background-color: var(--thistle);
  color: var(--deep-purple);
  border-radius: 25px;
  min-height: 100px;
  margin-bottom: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.contact-row {
  flex-wrap: wrap;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.cta-section {
  background-color: var(--deep-purple);
  color: var(--white);
  text-align: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  font-size: 18px;
}

.h2-cta {
  color: var(--thistle);
  font-size: 46px;
}

.lead {
  color: var(--thistle);
  font-size: 150%;
}

.seperator {
  border-right: 10px solid var(--thistle);
  border-left: 10px solid var(--lavender);
  background-color: var(--deep-purple);
  width: 100px;
  height: 5px;
  margin-top: 3rem;
  margin-bottom: 3.5rem;
}

.h3-internal {
  color: var(--deep-purple);
  font-size: 36px;
}

.content-list {
  margin-bottom: 2rem;
  padding-left: 0;
  list-style-type: none;
}

.content-list-item {
  box-shadow: 0 0 10px -3px var(--thistle);
  color: var(--deep-purple);
  border-radius: 1000px;
  margin-bottom: .5rem;
  padding: .8rem 1rem .8rem 2rem;
}

.faq-plus-wrap {
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  margin-right: 25px;
  display: flex;
  position: relative;
}

.faq-plus-l {
  background-color: var(--lavender);
  border-radius: 3px;
  width: 5px;
  height: 100%;
  position: absolute;
}

.faq-plus {
  background-color: var(--lavender);
  border-radius: 3px;
  width: 100%;
  height: 5px;
}

.faq-question {
  cursor: pointer;
  align-items: center;
  height: 90px;
  font-size: 18px;
  font-weight: 800;
  display: flex;
}

.faq-answer-text {
  margin-bottom: 30px;
}

.faq-answer {
  border-bottom: 1px solid #2d3e501f;
  padding-left: 45px;
  overflow: hidden;
}

.banner-container {
  width: 90vw;
  max-width: 1640px;
  margin-top: 90px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.banner-row {
  flex-wrap: wrap;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.text-white {
  color: var(--white);
}

.h1-white {
  color: var(--white);
  font-size: 48px;
}

.h1-white.longtitle {
  font-size: 45px;
}

.rounded {
  box-shadow: 0 0 10px 0 var(--thistle);
  border-radius: 25px;
  margin-bottom: 1rem;
}

.h3-bio {
  color: var(--lavender);
  margin-bottom: 0;
  font-size: 36px;
}

.h4-bio {
  color: var(--thistle);
  font-size: 32px;
}

.bio-row {
  flex-wrap: wrap;
  align-items: center;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.service-row {
  flex-wrap: wrap;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.contact-banner-row {
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.lottie-1 {
  width: 300px;
}

.thanks-row {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.h1-utility {
  margin-bottom: 3rem;
}

.address-link {
  width: 170px;
  display: block;
}

.bg-lavender {
  background-color: #d2c6eb24;
}

.icon-tmj {
  width: 60px;
  height: 60px;
}

.contact-hours {
  max-width: none;
  margin-bottom: 1rem;
  display: flex;
}

.nav-container {
  width: 100vw;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.body_link {
  color: var(--deep-purple);
  text-decoration: underline;
}

.body_link.light {
  color: var(--thistle);
}

.footnote {
  margin-top: 40px;
  font-size: 12px;
  line-height: 200%;
}

.product-col {
  margin-bottom: 20px;
}

.product-col.first {
  border-radius: 20px;
  margin-top: 20px;
  padding-top: 0;
  position: static;
  inset: auto 0% 0%;
}

.product-title {
  color: var(--lavender);
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 150%;
}

.product-container {
  border-radius: 20px;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px 20px;
  display: flex;
  position: relative;
  box-shadow: 0 2px 5px #0003;
}

.prod-image {
  text-align: center;
  object-fit: cover;
  object-position: 50% 0%;
  max-width: 100%;
  height: 200px;
  min-height: 200px;
  max-height: 200px;
}

.prod-card {
  flex-direction: column;
  flex: 0 auto;
  justify-content: space-around;
  padding-top: 20px;
  display: flex;
}

.product-grid {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.heading-2 {
  margin-top: 40px;
}

.product-nav {
  border-radius: 20px;
  flex-direction: row;
  align-items: center;
  height: 60px;
  display: flex;
  box-shadow: 0 2px 5px 3px #0003;
}

.heading-3 {
  text-align: center;
  flex: 0 auto;
  margin-bottom: 0;
}

.heading-3:hover {
  border: 0px solid var(--lavender);
  color: var(--lavender);
}

.category-col {
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  display: block;
}

.paragraph-2 {
  text-align: center;
}

.products-grid {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.prod-grid-heading {
  padding-top: 40px;
  display: block;
}

.bold-text {
  display: block;
}

.h2 {
  font-size: 36px;
}

.h3, .h2-small {
  font-size: 20px;
}

.blog-sidebar-title {
  font-size: 32px;
}

.bolf-p {
  font-weight: 700;
}

.form_recaptcha-embed {
  perspective-origin: 0%;
  transform-origin: 0%;
  transform: scale(.9);
}

@media screen and (min-width: 1280px) {
  h1 {
    font-size: 65px;
  }

  h2 {
    font-size: 52px;
  }

  h3 {
    font-size: 44px;
  }

  h4 {
    font-size: 36px;
  }

  h5 {
    font-size: 28px;
  }

  h6 {
    font-size: 20px;
  }

  .col.nav-sm-wrap {
    display: flex;
  }

  .col.logo-wrap {
    width: 200px;
  }

  .col.welcome-img-wrap {
    max-width: 580px;
    height: 527px;
  }

  .col.home-services-bg {
    background-image: linear-gradient(#34214e73, #34214e73), url('../images/bg-home-service.webp');
    background-position: 0 0, 50%;
    background-size: auto, cover;
  }

  .col.affordable-wrap {
    width: 50%;
    max-width: 500px;
  }

  .col.contact-content {
    max-width: 710px;
  }

  .col.contact-sidebar {
    max-width: 580px;
  }

  .copyright {
    height: 120px;
    font-size: 14px;
  }

  .logo {
    width: 170px;
    height: 90px;
  }

  .nav-item {
    letter-spacing: 1px;
    font-size: 12px;
    line-height: 12px;
  }

  .nav-item.btn-nav-item:hover {
    background-color: var(--lavender);
    color: var(--deep-purple);
  }

  .nav-toggle {
    padding-right: 20px;
    display: flex;
  }

  .nav-dd-item {
    font-size: 12px;
    line-height: 12px;
  }

  .dd-subnav-wrap {
    font-size: 12px;
  }

  .dd-subnav-wrap-toggle, .subnav-link {
    line-height: 12px;
  }

  .circle.portrait {
    width: 220px;
    max-width: 220px;
    height: 220px;
  }

  .circle.lobby {
    width: 398.4px;
    height: 398.4px;
  }

  .circle.invisalign {
    width: 160px;
    max-width: 160px;
    height: 160px;
    top: 350px;
  }

  .circle.lobby-wrap {
    max-width: 400px;
  }

  .h2-home-services {
    width: 60vw;
    margin-bottom: -8rem;
    padding-left: 70px;
    font-size: 80px;
  }

  .contact-row {
    justify-content: space-between;
  }

  .prod-image {
    height: 300px;
  }
}

@media screen and (min-width: 1440px) {
  body {
    font-size: 16px;
  }

  h2 {
    font-size: 64px;
  }

  .col.nav-wrap {
    max-width: 880px;
  }

  .col.logo-wrap {
    width: 230px;
  }

  .col.welcome-img-wrap {
    max-width: 710px;
    height: 647px;
  }

  .col.home-services-bg {
    padding-top: 90px;
    padding-bottom: 90px;
  }

  .col.new-patient-text {
    max-width: 580px;
    margin-top: 80px;
  }

  .col.affordable-wrap {
    max-width: 510px;
  }

  .col.service-img-wrap {
    max-width: 50%;
  }

  .col.service-text-wrap {
    flex: 1;
  }

  .col.service-img-wrap-alt {
    max-width: 50%;
  }

  .col.service-text-wrap-alt {
    flex: 1;
  }

  .copyright {
    height: 140px;
  }

  .content {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .banner.interior-banner {
    height: 600px;
  }

  .h4-blog-sidebar {
    font-size: 18px;
  }

  .logo {
    width: 200px;
    height: 90px;
  }

  .slide {
    background-image: linear-gradient(to bottom, null, null), url('../images/homepage-slide-1-hd.webp');
  }

  .slide-2 {
    background-image: linear-gradient(to bottom, null, null), url('../images/homepage-slide-2-hd.webp');
  }

  .welcome {
    padding-top: 3rem;
    padding-bottom: 0;
  }

  .circle.portrait {
    width: 290px;
    max-width: 290px;
    height: 290px;
  }

  .circle.lobby {
    width: 478.4px;
    height: 478.4px;
  }

  .circle.invisalign {
    width: 180px;
    max-width: 180px;
    height: 180px;
    top: 450px;
    left: 180px;
  }

  .circle.lobby-wrap {
    max-width: 480px;
    top: 70px;
    left: 160px;
  }

  .text-purple {
    font-size: 64px;
  }

  .home-services {
    margin-bottom: -100px;
  }

  .h2-home-services {
    margin-bottom: -7rem;
    font-size: 90px;
  }

  .home-new-patients {
    background-image: url('../images/bg-home-new-patients-hd.webp');
  }

  .dashed-card-body {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .footer-link.phone {
    font-size: 24px;
  }

  .contact-row {
    justify-content: center;
  }

  .service-row {
    align-items: center;
  }

  .contact-banner-row {
    justify-content: center;
  }

  .product-title {
    padding-top: 15px;
  }

  .prod-image {
    height: 400px;
  }
}

@media screen and (min-width: 1920px) {
  body {
    font-size: 18px;
  }

  h2 {
    font-size: 74px;
  }

  .col.sidebar {
    max-width: 520px;
  }

  .col.nav-wrap {
    max-width: 960px;
  }

  .col.welcome-text {
    max-width: 610px;
  }

  .col.welcome-img-wrap {
    max-width: 790px;
    height: 696px;
  }

  .col.home-services-bg {
    padding-top: 120px;
    padding-bottom: 120px;
  }

  .col.new-patient-text {
    max-width: 670px;
  }

  .col.affordable-wrap {
    max-width: 570px;
  }

  .col.home-contact-text {
    max-width: 760px;
  }

  .col.contact-content {
    margin-right: 60px;
  }

  .col.service-img-wrap, .col.service-img-wrap-alt {
    max-width: 500px;
  }

  .copyright {
    height: 160px;
    font-size: 16px;
  }

  .btn {
    font-size: 16px;
  }

  .banner.interior-banner {
    height: 700px;
  }

  .banner.interior-banner.about-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/about-banner-2k.webp');
  }

  .banner.interior-banner.pediatric-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/pediatric-banner-2k.webp');
    background-position: 0 0, 50%;
  }

  .banner.interior-banner.cosmetic-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/cosmetic-banner-2k.webp');
    background-position: 0 0, 100%;
  }

  .banner.interior-banner.general-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/general-banner-2k.webp');
  }

  .banner.interior-banner.tech-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/tech-banner.webp');
  }

  .banner.interior-banner.patient-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #0000), url('../images/financial-banner-2k.webp');
  }

  .banner.interior-banner.contact-banner {
    background-image: linear-gradient(#70628d87, #70628d87), url('../images/contact-banner-2k-new.webp');
  }

  .banner.home-banner {
    max-height: 1200px;
  }

  .nav-item {
    font-size: 14px;
    line-height: 14px;
  }

  .h5-sub.mb3 {
    letter-spacing: 5px;
  }

  .d-none.d-xl-block {
    display: block;
  }

  .h1-homepage {
    font-size: 98px;
  }

  .circle.portrait {
    width: 310px;
    max-width: 310px;
    height: 310px;
  }

  .circle.lobby {
    width: 548.4px;
    height: 548.4px;
  }

  .circle.invisalign {
    top: 500px;
  }

  .circle.lobby-wrap {
    max-width: 550px;
  }

  .tiny-title.text-white {
    font-size: 14px;
  }

  .text-purple {
    font-size: 74px;
  }

  .home-services {
    margin-bottom: -130px;
  }

  .h2-home-services {
    width: 58vw;
    margin-bottom: -6rem;
    padding-left: 90px;
    font-size: 110px;
  }

  .home-new-patients {
    background-image: url('../images/bg-home-new-patients-2k.webp');
    height: 800px;
  }

  .dashed-card-body {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .footer-link.phone {
    font-size: 26px;
  }

  .faq-question {
    font-size: 20px;
  }

  .text-white, .h1-white {
    font-size: 56px;
  }

  .d-xl-none {
    display: none;
  }

  .prod-image {
    height: 400px;
  }
}

@media screen and (max-width: 991px) {
  .cust-container {
    width: 95vw;
    max-width: none;
  }

  .row.a-center {
    align-items: center;
  }

  .row.j-center, .row.j-sm-center {
    justify-content: center;
  }

  .col.md8.mobile-full-width {
    max-width: 100%;
  }

  .col.sm12 {
    width: 100%;
  }

  .col.sm12.mb-sm-1 {
    margin-bottom: 1rem;
  }

  .col.md6.sm12 {
    max-width: none;
  }

  .col.sidebar {
    width: 100%;
    max-width: 45%;
    margin-top: -120px;
  }

  .col.nav-wrap {
    order: 1;
    width: 100%;
    max-width: none;
    position: absolute;
    inset: auto auto 0% 0%;
  }

  .col.nav-sm-wrap {
    margin-left: auto;
    display: flex;
  }

  .col.logo-wrap {
    width: auto;
  }

  .col.mobile-nav-toggle-wrap {
    align-items: center;
    display: flex;
  }

  .col.welcome-img-wrap {
    width: 40%;
    max-width: 300px;
    height: 362px;
  }

  .col.new-patient-text {
    margin-left: 0;
  }

  .col.affordable-wrap {
    max-width: 70%;
  }

  .col.footer-sm-wrap {
    margin-left: auto;
  }

  .col.contact-content {
    width: 100%;
    max-width: 670px;
  }

  .col.contact-sidebar {
    width: 100%;
    max-width: 650px;
  }

  .col.inner-banner-content {
    max-width: 83.333%;
  }

  .col.inner-banner-content-alt {
    max-width: none;
  }

  .col.bio-img {
    width: auto;
  }

  .col.service-text-wrap-alt {
    flex: 0 auto;
    width: 100%;
  }

  .col.col-lottie {
    max-width: 300px;
    margin-bottom: 3rem;
  }

  .btn.btn-link.d-sm-block {
    display: block;
  }

  .btn.btn-lavender {
    background-color: var(--deep-purple);
    background-image: none;
    border-style: none;
    display: block;
  }

  .btn.btn-lavender:hover {
    background-color: var(--lavender);
  }

  .btn.btn-lavender.d-block:hover {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .navbar {
    box-shadow: 0 0 4px #00000026;
  }

  .utility-page-wrap {
    padding-top: 130px;
    padding-bottom: 90px;
  }

  .ada-content-wrapper {
    margin-top: 130px;
  }

  .privacy-notice {
    margin-top: 100px;
  }

  .banner.interior-banner {
    height: auto;
    min-height: 500px;
  }

  .banner.interior-banner.cosmetic-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628da1), url('../images/cosmetic-banner.webp');
    background-position: 0 0, 100%;
    background-size: auto, cover;
  }

  .banner.interior-banner.general-banner {
    background-position: 0 0, 50%;
  }

  .banner.home-banner {
    max-height: 700px;
  }

  .logo {
    width: 150px;
    height: 70px;
  }

  .thanks {
    padding-top: 130px;
    padding-bottom: 90px;
  }

  .nav-item {
    color: var(--deep-purple);
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 33px;
    line-height: 20px;
  }

  .nav-item:hover {
    color: var(--thistle);
  }

  .nav-item.p-0 {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .nav-item.btn-nav-item {
    border-radius: 0;
    margin-top: 0;
    margin-bottom: 0;
  }

  .nav-dd.w--open {
    opacity: 1;
    color: #0000;
    background-color: #34214e80;
    border-width: 0;
    border-radius: 0;
    padding: 0;
    position: relative;
    top: 0;
  }

  .nav-toggle {
    color: var(--deep-purple);
    justify-content: flex-end;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 33px;
  }

  .nav-toggle:hover {
    color: var(--thistle);
  }

  .nav-dd-item {
    text-align: right;
    background-color: #0000;
  }

  .small {
    font-size: 14px;
  }

  .nav-menu {
    background-color: var(--lavender);
    flex-direction: column;
    display: flex;
    inset: 0 auto auto 0%;
  }

  .nav-row {
    flex-wrap: wrap;
    height: 70px;
  }

  .home-banner-container {
    width: 95vw;
    max-width: none;
  }

  .slide {
    background-image: linear-gradient(to bottom, null, null), url('../images/homepage-slide-1.webp');
    background-position: 0 0, 50% 0;
  }

  .nav-dd-inner-wrap {
    background-color: #0000;
    border-radius: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  .dd-subnav-wrap-toggle {
    justify-content: flex-end;
    padding-right: 20px;
  }

  .subnav-link {
    text-align: right;
  }

  .icon {
    color: var(--lavender);
  }

  .main-nav-toggle.w--open {
    background-color: #0000;
  }

  .welcome {
    padding-bottom: 3rem;
  }

  .circle.portrait {
    width: 130px;
    max-width: 130px;
    height: 130px;
    box-shadow: 2px 10px 10px #00000047;
  }

  .circle.lobby {
    width: 258.4px;
    height: 258.4px;
  }

  .circle.invisalign {
    border-width: 5px;
    width: 100px;
    max-width: 100px;
    height: 100px;
    top: 250px;
    left: 60px;
    box-shadow: 0 0 0 10px #70628d66;
  }

  .circle.lobby-wrap {
    max-width: 260px;
    left: 30px;
  }

  .text-purple {
    font-size: 40px;
  }

  .welcome-row {
    justify-content: space-around;
  }

  .btn-wrap {
    font-size: 16px;
  }

  .btn-wrap.d-sm-block {
    display: block;
  }

  .home-service-card {
    text-align: center;
    flex-direction: column;
    width: 280px;
    height: 270px;
  }

  .home-service-card-text {
    width: 100%;
  }

  .h2-home-services {
    font-size: 50px;
  }

  .home-services-container {
    width: 95vw;
    max-width: none;
  }

  .home-new-patients {
    background-image: linear-gradient(#fff9, #fff9), url('../images/bg-home-new-patients-md.webp');
    background-position: 0 0, 100%;
    background-repeat: repeat, no-repeat;
    background-size: auto, auto 100%;
    height: 570px;
  }

  .home-new-patients-container {
    justify-content: center;
    align-items: center;
    width: 95vw;
    max-width: none;
  }

  .affordable {
    height: 610px;
  }

  .home-contact {
    height: auto;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .contact-row {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .h2-cta {
    font-size: 40px;
  }

  .banner-container {
    width: 95vw;
    max-width: none;
  }

  .banner-row {
    text-align: center;
    justify-content: center;
  }

  .bio-row {
    flex-direction: column;
    align-items: stretch;
  }

  .contact-banner-row {
    text-align: center;
    justify-content: center;
  }

  .lottie-1 {
    width: auto;
  }

  .thanks-row {
    text-align: center;
  }

  .nav-container {
    width: 95vw;
    max-width: none;
  }

  .prod-card {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-direction: column;
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
  }

  h1 {
    font-size: 58px;
  }

  h2 {
    font-size: 50px;
  }

  h3 {
    font-size: 42px;
  }

  h4 {
    font-size: 34px;
  }

  h5 {
    font-size: 26px;
  }

  h6 {
    font-size: 18px;
  }

  .cust-container {
    width: 100vw;
  }

  .row.j-end.j-xs-center {
    justify-content: center;
  }

  .col.md6.sm12.xs6 {
    max-width: 50%;
  }

  .col.main {
    margin-bottom: 3rem;
  }

  .col.sidebar {
    max-width: none;
    margin-top: 0;
  }

  .col.welcome-text {
    width: 72%;
    max-width: 470px;
    margin-left: auto;
    margin-right: 5%;
  }

  .col.welcome-img-wrap {
    width: 90%;
    max-width: none;
    height: 270px;
    margin-bottom: 3vw;
  }

  .col.home-services-bg {
    background-image: linear-gradient(#34214e73, #34214e73), url('../images/bg-home-service-tablet.webp');
    background-position: 0 0, 50%;
    background-size: auto, cover;
  }

  .col.home-service-card-wrap.mb-0.mb-xs-30 {
    margin-bottom: 30px;
  }

  .col.new-patient-text {
    margin-top: 180px;
  }

  .col.affordable-wrap {
    max-width: 500px;
  }

  .col.home-contact-text {
    max-width: 470px;
  }

  .col.footer-map {
    max-width: none;
    height: 350px;
  }

  .col.footer-contact-content {
    max-width: none;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .col.contact-content {
    max-width: 530px;
  }

  .col.contact-sidebar {
    max-width: 550px;
  }

  .col.col-cta {
    margin-bottom: 3rem;
  }

  .col.bio-text {
    max-width: 450px;
  }

  .banner.interior-banner.about-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/about-banner-mobile.webp');
  }

  .banner.interior-banner.pediatric-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/pediatric-banner-mobile.webp');
  }

  .banner.interior-banner.cosmetic-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/cosmetic-banner-mobile.webp');
  }

  .banner.interior-banner.general-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/general-banner-mobile.webp');
  }

  .banner.interior-banner.tech-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/tech-banner-mobile.webp');
  }

  .banner.interior-banner.patient-banner {
    background-image: linear-gradient(65deg, #34214edb 24%, #70628d6b), url('../images/financial-banner-mobile.webp');
  }

  .banner.interior-banner.contact-banner {
    background-image: linear-gradient(#70628d87, #70628d87), url('../images/contact-banner-mobile-new.webp');
  }

  .banner.home-banner {
    max-height: 600px;
  }

  .browser-detect {
    padding-left: 60px;
    padding-right: 60px;
  }

  .browser-warning {
    padding: 25px;
    display: block;
  }

  .nav-item, .nav-toggle {
    padding-right: 16px;
  }

  .small {
    font-size: 12px;
  }

  .home-banner-container {
    width: 100vw;
  }

  .slide {
    background-image: linear-gradient(to bottom, null, null), url('../images/homepage-slide-1-mobile.webp');
  }

  .slide-2 {
    background-image: linear-gradient(to bottom, null, null), url('../images/homepage-slide-2-mobile.webp');
  }

  .circle.portrait {
    max-width: 130px;
    left: 10px;
  }

  .circle.invisalign {
    width: 70px;
    max-width: 70px;
    height: 70px;
    top: 200px;
    left: 30px;
  }

  .circle.lobby-wrap {
    max-width: 260px;
    top: 10px;
    left: 40px;
  }

  .tiny-title.text-white {
    font-size: 14px;
  }

  .welcome-row {
    justify-content: space-between;
  }

  .btn-wrap {
    font-size: 14px;
  }

  .home-service-card {
    width: 270px;
    height: 260px;
  }

  .h2-home-services {
    width: 90vw;
  }

  .home-services-container {
    width: 100vw;
  }

  .home-new-patients {
    background-image: linear-gradient(#fff9, #fff9), url('../images/bg-home-new-patients-mobile.webp');
    background-position: 0 0, 50%;
    background-size: auto, cover;
    height: 670px;
  }

  .home-new-patients-container {
    justify-content: flex-start;
    width: 100vw;
  }

  .affordable {
    background-image: url('../images/bg-home-affordable-mobile.webp');
  }

  .dashed-card-body {
    padding: 2rem;
  }

  .home-contact {
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .home-contact-title {
    font-size: 19px;
  }

  .h2-internal {
    font-size: 36px;
  }

  .h4-interior {
    font-size: 28px;
  }

  .seperator.mx-xs-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .h3-internal {
    font-size: 32px;
  }

  .banner-container {
    width: 100vw;
  }

  .text-white, .h1-white {
    font-size: 40px;
  }

  .h3-bio {
    font-size: 32px;
  }

  .h4-bio {
    font-size: 28px;
  }

  .bio-row {
    align-items: center;
  }

  .nav-container {
    width: 100vw;
  }

  .prod-image {
    height: 300px;
  }

  .prod-card {
    width: 100%;
  }

  .product-grid, .products-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 46px;
  }

  h2 {
    font-size: 38px;
  }

  h3 {
    font-size: 32px;
  }

  h4 {
    font-size: 26px;
  }

  h5 {
    font-size: 20px;
  }

  h6 {
    font-size: 14px;
  }

  .row.j-sm-center.xs-vert {
    flex-direction: column;
  }

  .row.j-sm-center.xs-vert.a-xs-stretch {
    align-items: stretch;
  }

  .col.md6.sm12.xs6.xxs12 {
    max-width: none;
  }

  .col.nav-sm-wrap {
    display: none;
  }

  .col.welcome-text {
    width: 100%;
    max-width: none;
    margin-right: 0%;
  }

  .col.welcome-img-wrap {
    width: 100%;
    max-width: 350px;
    height: 300px;
    margin-bottom: 0;
    margin-left: auto;
  }

  .col.home-service-card-wrap {
    width: 100%;
  }

  .col.footer-sm-wrap {
    display: none;
  }

  .col.mb-xxs-1 {
    margin-bottom: 1rem;
  }

  .btn.btn-link, .btn.btn-link-white {
    letter-spacing: 2px;
  }

  .ada-content-wrapper {
    margin-top: 120px;
  }

  .banner.home-banner {
    max-height: none;
  }

  .browser-detect {
    padding: 10% 10px;
    overflow: scroll;
  }

  .browser_wrap {
    flex-wrap: wrap;
  }

  .browser_link {
    width: 50%;
  }

  .browser_link.preferred {
    margin-bottom: 20px;
  }

  .browser-warning {
    padding: 20px;
  }

  .logo {
    width: 120px;
    height: 60px;
  }

  .nav-row {
    height: 60px;
  }

  .h5-sub.mb3 {
    font-size: 20px;
  }

  .h1-homepage {
    font-size: 40px;
  }

  .home-service-card {
    text-align: center;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 260px;
  }

  .h2-home-services {
    margin-bottom: -11rem;
    padding-left: 20px;
    font-size: 36px;
  }

  .dashed-card {
    padding: .5rem;
  }

  .dashed-card-body {
    border-radius: 18px;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .h2-cta {
    font-size: 25px;
  }

  .lead {
    font-size: 120%;
  }

  .product-container {
    height: auto;
  }

  .product-grid, .products-grid {
    grid-template-columns: 1fr;
  }
}

#w-node-_0be21b9c-2bcc-19cf-720e-0cd4fab00408-895dab59 {
  justify-self: auto;
}

#w-node-_625cf2a4-8474-e991-0b0d-5290a5c8c931-895dab59 {
  align-self: auto;
}

#w-node-_9f1fb124-f0e6-bcc6-57e9-ec28862d2f18-895dab59 {
  justify-self: auto;
}

#w-node-_9f1fb124-f0e6-bcc6-57e9-ec28862d2f26-895dab59 {
  align-self: auto;
}

#w-node-d4ba931b-796d-2dcc-649b-478708892ed3-363174b2, #w-node-a9ebc968-66bd-f4e8-442e-e06151003174-363174b2 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: stretch;
}

#w-node-_408d86fb-a46d-49f2-8c0c-8398e5f91624-363174b2, #w-node-c46168ed-b253-ed1d-339c-6b283c6fa556-363174b2, #w-node-c6c53cbd-174c-8f71-dda7-155579051499-363174b2, #w-node-_3b9c5546-93f4-c9bb-34c9-0e4e6a960769-363174b2, #w-node-_5cdc566a-580f-b4b0-20ae-ccdaea1e6d6d-363174b2, #w-node-dc45e24d-aa22-2d82-a17d-aff882aaf45b-363174b2, #w-node-_304f4eb5-4dcd-cdf9-f1d7-43936372bdb3-363174b2, #w-node-be6bb503-e458-d8f9-70aa-80010459acf3-363174b2, #w-node-e93ab6f2-86af-5a5e-f5de-1258d10250c0-363174b2, #w-node-_95ac08f1-3277-8ec2-53d8-2b8d0769407a-363174b2, #w-node-d3ee5f8f-2586-bdfa-a955-d4ee438a054a-363174b2, #w-node-_306d7f0c-285e-46ba-19d2-07f3884f12f4-363174b2, #w-node-ab99481c-01cf-bc46-6fa0-c02fee4c47f8-363174b2, #w-node-_9bbd3f45-a893-ee0a-a2c9-9273f6b55974-363174b2, #w-node-_7625de8e-8a5b-97ec-30d3-76fd56ffae24-363174b2, #w-node-_483e7b0f-587a-58ab-c8d8-6d1524243d54-363174b2, #w-node-f06aa130-b5c0-c9f2-8581-a11a17664b3e-363174b2, #w-node-_430285d7-e0b9-e55e-ebe6-2e62a4f7fff4-363174b2, #w-node-e4e154f8-9d97-570b-74ab-47500d138792-363174b2, #w-node-_8527042d-e437-7364-0aff-7ebda96a64e1-363174b2, #w-node-_59c17ed9-df77-259a-22a0-5569229787f7-363174b2, #w-node-efac390a-e5e9-f3cc-ef15-d3c53e3de0a2-363174b2, #w-node-_0782e475-9261-3aef-fe1c-ecf9fc4e12c2-363174b2, #w-node-_30907de8-6aa3-2a30-7e05-c2e0bb6cb6bf-363174b2, #w-node-ba25d368-6793-aaed-8fe6-af670952838f-363174b2, #w-node-f7344999-4c41-1862-5220-422d6f368f98-363174b2, #w-node-c857cd11-907d-fd42-ca81-d1f660a946c5-363174b2, #w-node-d5e65a38-776c-f1a0-fcb9-84ba85682159-363174b2, #w-node-aade26cc-9c77-205c-f827-951762d88610-363174b2, #w-node-a4cb9919-6363-1549-9707-157def0f6dc6-363174b2, #w-node-_7614d16f-9b32-ca25-1bcf-484e83bb03ef-363174b2, #w-node-_23bd0cda-b9f9-84c5-c4db-abfc5eafd553-363174b2, #w-node-_027938d8-6a3d-eb16-b654-fede89ce090f-363174b2, #w-node-_48e725ef-7181-eda9-07de-5987f8415c11-363174b2, #w-node-_0b118414-c863-eddd-e8a7-615ad6fb033f-363174b2, #w-node-_6f43e345-a7ea-479c-f84b-77fec47c6f36-363174b2, #w-node-_21a51b89-5285-3143-a973-9e86ceeee5eb-363174b2, #w-node-_6ab4f322-6066-d82a-078b-84f946a299e2-363174b2 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}


@font-face {
  font-family: 'Fa 400';
  src: url('../fonts/fa-regular-400.eot') format('embedded-opentype'), url('../fonts/fa-regular-400.woff') format('woff'), url('../fonts/fa-regular-400.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}
@font-face {
  font-family: 'Fa brands 400';
  src: url('../fonts/fa-brands-400.eot') format('embedded-opentype'), url('../fonts/fa-brands-400.woff') format('woff'), url('../fonts/fa-brands-400.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}
@font-face {
  font-family: 'Fa solid 900';
  src: url('../fonts/fa-solid-900.eot') format('embedded-opentype'), url('../fonts/fa-solid-900.woff') format('woff'), url('../fonts/fa-solid-900.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}