/*
  Theme Name: IDW Child Theme 2025
  Description: Custom Theme for
  Author: Infinity Dental Web
  Author URI: https://www.infinitydentalweb.com
  Version: 2.25
 	License: GPL-2.0+
	License URI: http://www.opensource.org/licenses/gpl-license.php
*/

:root {
	--primary-color: #003399;
  --secondary-color: #0f6a24;
  --text-color:#222;
  --body-font:'Roboto', sans-serif;
  --heading-font:'Roboto', sans-serif;
}

body {
    background-color:#fff;
    color:var(--text-color);
	  font-size:1.6rem;
    line-height: 3.1rem;
    font-family:var(--body-font);
    max-width: 1920px!important;
}

section {
	line-height: 1;
  position: relative;
}

h1, h2, h3, h4, h5, p, ul {
	margin-top: 0;
  font-family:var(--heading-font);
}

p {
	line-height: 3.1rem;
	margin: 0;
}

figcaption{
  text-align: center;
}



/*
* Base CSS for Search Functionality
* Last Update: 2022-11-11
*/


/* Search icon - color and position as needed */
.search-icon {
  display: block;
  position: absolute;
  right: 45px;
  top: 60px;
  transform:translateY(-50%);
  z-index: 2;
  transition:.4s ease-in all;
}

.stuck .search-icon {}

.search-icon {
  color:#222;
  cursor: pointer;
}

.search-icon i {
  font-size:22px;
}

.search-icon svg {
  width:50px!important;
  height:50px;
}


/* Search overlay - color as needed */
.search-overlay {
  position:fixed;
  top: 0;
  bottom:0;
  left:0;
  right:0;
  z-index: 9999999999990;
  background: rgba(255,255,255,.9);
  width:100%;
  height:0;
  display:flex;
  overflow: hidden;
  justify-content: center;
  align-items: center;
  transition:.4s ease-in all;
  opacity: 0;
  
}

.search-overlay.active {
  height:100%;
  opacity:1;
}

.search-close {
  position: absolute;
  right:3.3rem;
  top:5.2rem;
  color:#222;
  font-size:36px;
  font-weight:bold;
  cursor: pointer;
}


/* Search overlay form - color as needed */
.search-overlay > form {
  display:flex;
  width:100%;
  max-width:640px;
  justify-content: space-between;
  align-items: stretch;
}

.search-overlay > form > input {
  width:100%;
  background:transparent;
  border:none;
  border-bottom:1px solid #222;
  font-size:24px;
  color:#222;
  padding:20px;
}

.search-overlay > form > button {
  width:200px;
  margin-left:20px;
  font-size:20px;
  font-weight:700;
  letter-spacing:2px;
  text-transform: uppercase;
  background:#222;
  color:#fff;
  border:none;
  border-radius:6px;
  cursor: pointer;
}

.search-overlay > form > button:hover {
  background:#fff;
  color:#222;
}


/* Mobile search form - style and color as needed */
.mobile-search-form {
  display:flex;
  width:100%;
  max-width:100%;
  justify-content: space-between;
  align-items: stretch;
}

.mobile-search-form > input {
  width:100%;
  background:rgba(255,255,255,.2);
  border:1px solid #eee;
  font-size:18px;
  color:#fff;
  padding:8px;
  font-weight:400;
}

.mobile-search-form > button {
  width:120px;
  margin-left:20px;
  font-size:18px;
  font-weight:400;
  letter-spacing:2px;
  text-transform: uppercase;
  color:#fff;
  border:none;
  border-radius:3px;
  cursor: pointer;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: .7; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: var(--text-color);
  opacity: .7;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: var(--text-color);
  opacity: .7;
}

.icon-color {
  fill:var(--text-color);
}

#menu-footer li a {
  font-size: 11px;
  font-weight: 200;
}

/*------------------------- Custom styles ----------------------------------*/

/* General */

.small-heading {
  font-family: Montserrat;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2.4px;
  color: #fff;
}
.large-heading {
  font-size: 40px;
  line-height: 1.2;
  letter-spacing: .8px;
  font-family: "Playfair Display", serif;
  font-style: italic;
  color: #3f4245;
}
.large-heading span {
  font-style: normal;
}
.card-text {
  font-family: Roboto;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0.6px;
  color: #3f4245;
}
.light {
  color: #fff;
}
.dark {
  color: #3f4245;
}

/* Header */

header {
  position: absolute;
  top: 0;
  z-index: 2;
  max-width: 1920px;
  margin: 0 auto;
  color: #3f4245;
  backdrop-filter: blur(30px);
  background-color: rgba(255, 255, 255, 0.85);
  height: 130px;
}
.nav-container {
  display: block;
  position: relative;
  height: 100%;
}
.header-phone {
  position: absolute;
  right: 4.2rem;
  top: 3rem;
  width: 50%;
  font-size: 16px;
  line-height: 1.33;
  letter-spacing: .36px;
  color: #3f4245;
  font-family: 'Roboto';
  display: flex;
  justify-content: flex-end;
}
.phone-number {
  display: flex;
  align-items: center;
  position: relative;
  bottom: 1rem;
}
.phone-number a {
  position: relative;
  z-index: 99;
  text-decoration: none;
  color: inherit;
  top: 1rem;
  font-family: 'Roboto';
  order: 1;
  text-align: right;
}
.phone-number img {
  position: relative;
  order: 2;
  top: 1rem;
  left: 1rem;
}
.header-wrap {
  display: flex;
  position: absolute;
  left: 4.2rem;
  top: 3rem;
  width: 50%;
  column-gap: 1.52rem;
  justify-content: flex-start;
  align-items: center;
  z-index: 2;
  font-size: 16px;
  line-height: 1.33;
  letter-spacing: .36px;
  color: #3f4245;
  font-family: 'Roboto';
}
header .logo {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  top: 7rem;
  z-index: 9;
  width: 70px;
  transition: width 0.5s ease, height 0.5s ease;
}
/* header .logo img {
  transition: all 0.5s ease;
  width: 100%;
  max-width: 200px;
} */
.nav-primary {
  top: 8rem;
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 2;
}
.nav-primary a:visited {
  color: #3f3f3f;
}
.nav-primary .menu-main-menu-container {
  position: absolute;
  width: calc(50% - 120px);
  margin: 2.5rem 0 0 4rem;
  top: -5rem;
}
.nav-primary .menu-main-menu-right-container {
  position: absolute;
  width: calc(50% - 120px);
  text-align: left;
  right: 0;
  margin: 2.5rem 4rem 0 0;
  top: -5rem;
}
#menu-main-menu {
  justify-content: flex-end;
  padding-top: 2.1rem;
  padding-right: 0;
  gap: 3.5rem;
}
#menu-main-menu-right {
  justify-content: flex-start;
  padding-top: 2.1rem;
  padding-left: 0;
  gap: 3.5rem;
}
.nav-primary #menu-main-menu > li > a {
  color: #3f4245;
  font-size: 1.3rem;
  letter-spacing: 2px;
  line-height: 1;
  text-transform: uppercase;
  display: inline-block;
  padding: 0!important;
}
.nav-primary #menu-main-menu-right > li > a {
  color: #3f4245;
  font-size: 1.3rem;
  letter-spacing: 2px;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 600;
  display: inline-block;
  padding: 0;
}
.nav-primary a {
  color: #3f4245;
}
.nav-primary a:visited {
  color: #3f3f3f;
}
.nav-primary #menu-main-menu-right > li > a:hover, .nav-primary #menu-main-menu > li > a:hover {
  color: #ccbfaf;
}
/* .sub-menu {
  top: 30px!important;
  width: 290px!important;
} */
.menu li {
  font-size: 12px;
  letter-spacing: 2px;
  font-family: 'Montserrat';
  text-transform: uppercase;
  font-weight: 600;
  padding-bottom: 1rem;
}
.sub-menu li a:hover {
  background: rgba(61, 106, 142, .2);
}
header.stuck {
  height: 95px;
  z-index: 99;
}
header.stuck .header-wrap, header.stuck .header-phone {
  display: none;
}
header.stuck .nav-primary .menu-main-menu-container, header.stuck .nav-primary .menu-main-menu-right-container {
  border: none;
}
header.stuck .nav-primary {
  top: 4rem;
}
header.stuck .logo {
  top: 5rem;
  width: 55px; 
}


/* Hero */

.hero {
  position: relative;
  overflow: hidden;
}
.hero picture,
.hero img {
  inline-size: 100%;
  block-size: auto;
  display: block;
}

.hero-container {
  display: flex;
  justify-content: center;
  position: absolute;
  top: 57%;
  left: 15%;
  transform: translateY(-50%);
  z-index: 1;
  height: auto;
  max-height: 90%;
}
.hero-card {
  padding-block: clamp(2rem, 8vw, 9rem) clamp(1.5rem, 4vw, 5rem);
  padding-inline: clamp(1rem, 3vw, 2rem);
  width: clamp(260px, 32vw, 400px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 3rem;
  text-align: center;
  background: rgba(255,255,255,0.85);
}


.cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  text-align: center;
  font-family: Roboto;
  font-size: 15px;
  color: #3f4245;
  text-decoration: none;
   transition: color 0.25s ease-in-out;
   width: 125px;
}
.cta-arrow {
  max-width: 77px;
}
.cta span {
   transition: color 0.25s ease-in-out;
}
.cta:hover {
  color: #c4a177;
}
.cta img {
   transition: filter 0.25s ease-in-out;
}
.cta:hover img {
  filter: brightness(0) saturate(100%) invert(71%) sepia(49%) saturate(271%) hue-rotate(353deg) brightness(86%) contrast(87%);
}

/* Doctor */

.doctor {
    margin-top: 2rem;
}
.doctor:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:linear-gradient(
    90deg,
    rgba(180,180,180,0.35) 0%,
    rgba(180,180,180,1.2) 35%,
    rgba(180,180,180,2.08) 60%,
    rgba(180,180,180,0) 80%
  )
}


.slide {
    position: absolute;
    inset: 0;

    background-size: cover;
    background-position: center center;

    opacity: 0;
    transition: opacity .8s ease;
}

.slide.active {
    opacity: 1;
    z-index: 2;
}

.slider-content {
    position: absolute;

    left: 20%;
    top: 45%;

    transform: translateY(-50%);

    max-width: 650px;

    color: white;
    display: flex;
    flex-direction: column;
}
.slider-content .large-heading {
  margin-top: 1.5rem;
}
.slider-content .card-text {
  margin-top: 2.5rem;
}
.slider-content .small-heading {
  margin-top: 4rem;
}
.membership .card-text {
  margin-top: 0;
}
.memberships {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.membership {
  display: flex;
  gap: 1rem;
}
.slider-content .cta {
  align-items: flex-start;
  margin-top: 2.5rem;
  color: #fff;
}
.slider-content .cta img {
  filter: brightness(0) saturate(100%) invert(87%) sepia(89%) saturate(1%) hue-rotate(184deg) brightness(109%) contrast(97%);
}
.slider-content .cta 

.slider-content .cta:hover {
  color: #c4a177;
}
.slider-content .cta:hover span {
  color: #c4a177;
}
.slider-content .cta img {
   transition: filter 0.25s ease-in-out;
}
.slider-content .cta:hover img {
  filter: brightness(0) saturate(100%) invert(71%) sepia(49%) saturate(271%) hue-rotate(353deg) brightness(86%) contrast(87%);
}

/* Homepage - Smile Gallery */

.hero.sg {
  margin-top: 2rem;
}
.hero.sg .hero-container {
  top: 52%;
}
.hero.sg .hero-card {
  padding-block: 7rem 5rem;
}


.services {
  margin-top: 20px;
}
.services .abs {
  display: block;
}
.abs {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0;
  transition: 0.5s ease all;
}
.abs.show {
  opacity: 1;
}
.services .item, .services .owl-stage-outer, .services .owl-stage {
  height: 100%;
}
.service-slider {
  display: flex!important;
  width: 100%!important;
  position: absolute!important;
  top: 0!important;
  height:100%!important;
  z-index: 3!important;
}
.services .item {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  padding: 0 6rem 5rem;
  max-width: 25%;
  width: 100%;
  border-left: 1px solid rgba(255, 255, 255, .4);
  border-bottom: 1px solid #fff;

  flex: 1 1 25%;
  max-width: none;
  padding: 0 3vw 4vw; /* fluid instead of 6rem */
}
.services .item p {
  margin-top:2rem;
}
.services .item.focused p, .services .item:hover p  {
  display: block;
}
.services .item:hover .text-container, .services .item.focused .text-container  {
  color: white;
  position: relative;
  bottom: 3rem;
  transition: all 0.3s ease;
}
.touch .service-slider .item:hover a.button, .touch .service-slider .item.focused a.button, .touch .service-slider .active-slide .item a.button {
  display:block;
}
.services .item.focused p, .services .item:hover p  {
  display: block;
}

.services .item:hover .text-container, .services .item.focused .text-container  {
  color: white;
}
#service-bg {
  display: block;
}
.service-slider .text-container .larger-text .large-heading {
  font-size: 28px;
  color: #fff;
}
.service-slider .text-container .larger-text .large-heading::before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  height: 2px;
  width: 0;
  background: white;
  transition: width 0.4s ease;
}
.services .item:hover .large-heading::before,
.services .item.focused .large-heading::before {
  width: 40px;
}
.service-slider .text-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #fff;
  font-size: 28px;
  font-weight: lighter;
  max-width: 100%;
}
.service-slider .text-container p {
  font-size: 14px;
}
.service-slider .text-container .number {
  font-family: 'Roboto';
  margin-bottom: 4.5rem;
}
.services .slider-buttons {
  display: none;
}
.item a {
  text-decoration: none;
}
.learn-more-link {
  font-size: 14px;
  color: #fff;
  margin-top: 0.75rem;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
  pointer-events: none;
}

.services .item:hover .learn-more-link,
.services .item.focused .learn-more-link {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.services .item .hero-card {
  width: clamp(260px, 32vw, 360px);
}
.services .item .hero-card .small-heading {
  margin-bottom: 3rem;
}
.services .item .hero-card .card-text {
  font-weight: 500;
}
.services .item .hero-card {
  display: none;
}
.services .item.focused .hero-card {
  display: flex;
}




/* Homepage - Testimonials */

.testimonials {
  background-image: url('./images/testimonials-background.webp');
  background-size: cover;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  padding-bottom: 4rem;
}
.testimonials::before {
  content: "";
  position: absolute;
  top: 275px;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 370px;
  background: rgba(63, 66, 69, 0.2);
  transform: translateX(-50%);
}
.more-reviews div {
  display: flex;
  justify-content: center;
  gap: 3rem;
}
.more-reviews {
  display: flex;
  flex-direction: column;
  width: 31rem;
  gap: 1rem;
}
i.icon {
  position: relative;
  width: 15px;
  height: 15px;
  bottom: 1px;
}
.i-google {
  background-image: url('./images/google-icon.svg');
}
.more-reviews {
  font-size: 14px;
}
.more-reviews img {
  position: relative;
  bottom: 2px;
}
.more-reviews a {
  text-decoration: none;
  color: inherit;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.testimonials-container {
  margin: 10rem 0 6rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  text-align: center;
}
.testimonials .item {
  display: flex;
  gap: 6.5rem;
}
.testimonials .slider {
  overflow: visible;
}
.owl-stage-outer {
  overflow: visible;
}
.photo-container {
  position: relative;
  display: inline-block;
  overflow: visible;
}
.photo-container img {
  display: block;
  width: 274px;
  height: auto;
  position: relative;
  z-index: 2;
}
.photo-container::before {
  content: "";
  position: absolute;
  width: 84%;
  height: 131%;
  top: -7%;
  left: -10%;
  background: #f0e9e3;
  z-index: 1;
}
.photo-container.alt::before {
  background: #d9e2e9;
}
.testimonial-text {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  gap: 2.1rem;
  width: 370px;
}
.author {
  font-size: 14px;
  font-weight: bold;
}

.testimonials-slider .owl-stage .owl-item .active:nth-child(1) {
  justify-content: flex-end!important;
}
.testimonials-slider .owl-stage .owl-item:nth-child(3) {
  justify-content: flex-end!important;
}
.testimonials-slider .owl-stage .owl-item:nth-child(4) {
  justify-content: flex-start!important;
}
.testimonials-slider .owl-stage .owl-item:nth-child(5) {
  justify-content: flex-start;
}

.testimonials-slider .owl-stage .owl-item:nth-child(8) {
  justify-content: flex-start;
}
.testimonials-slider .owl-stage .owl-item.active.active-slide {
  justify-content: flex-end!important;
}

.testimonials .slider-buttons {
  display: flex;
  justify-content: center;
  gap: 4.5rem;
  border-top: 1px solid rgba(63, 66, 69, 0.2);
  width: 95%;
  padding-top: 2rem;
  position: static;
  margin-top: 5rem;
}

.slider-buttons button {
  border: none;
  background: none;
}
.slider-buttons button img:hover {
  cursor: pointer;
}
.slider-buttons img {
  transition: filter 0.3s ease;
}
.slider-buttons button:hover img {
  filter: brightness(0) saturate(100%) invert(76%) sepia(11%) saturate(1121%) hue-rotate(353deg) brightness(86%) contrast(85%);
}

/* Office Slider */

.office {
  background-color: #fff;
}

.office-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.office .hero-container {
  top: 48%;
  left: 15%;
  backdrop-filter: blur(30px);
  background-color: rgba(255, 255, 255, 0.85);
  z-index: 5;
}
.office .hero-card {
  padding-block: 6rem 5rem;
  padding-inline: 4rem;
}

.office .office-slider .owl-stage-outer {
  overflow:visible;
}

.testimonials-slider .item {
  position: relative;
}

.office-slider {
  max-width: 170rem;
}

.office-slider .owl-carousel .owl-item {
  width: 1782px;
  max-width: 1782px;
}

.office-slider .item img {
  width: 1782px;
  max-width: 1782px;
  height: 880px;
}

.office-slider .owl-item.active {
  opacity: 1;
}

.office-slider .owl-item {
  opacity: .6;
}

.office .slider-buttons {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  width: 90%;
  border-top: 1px solid rgba(63, 66, 69, 0.2);
}
.office .slider-buttons img {
  margin-top: 2rem;
}
.prev-slide-office {
  border-right: 1px solid rgba(63, 66, 69, 0.2)!important;
  padding-right: 2rem;
}

/* Footer */

footer {
  background-image: url('./images/footer-background.webp');
}

.collage {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  top: 12rem;
}

.col {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 196px; /* roughly image width */
  flex-shrink: 0;
}

.col img {
  width: 100%;
  display: block;
}

.col2 { margin-top: 100px; }
.col3 { margin-top: -20px; }
.col4 { margin-top: 60px; }
.col5 { margin-top: -20px; }
.col6 { margin-top: 100px; }


.cta-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 2.2rem;
  margin-bottom: 4rem;
}
.footer-logo {
  display: flex;
  justify-content: center;
  width: 95%;
  margin: 0 auto;
}
.footer-logo img {
  width: 80px;
}
.footer-logo {
  display: flex;
  align-items: center;
  text-align: center;
}
.footer-logo::before, .footer-logo::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgba(63, 66, 69, 0.2);
}
.footer-info {
  display: flex;
  gap: 10rem;
  justify-content: center;
  padding-bottom: 3rem;
}
.footer-item {
  display: flex;
  flex-direction: column;
}
.footer-item p {
  font-family: Roboto;
  font-size: 14px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: 0.28px;
  text-align: left;
  color: #3f4245;
}
.footer-item a {
  text-decoration: none;
  color: inherit;
  font-family: Roboto;
  font-size: 14px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: 0.28px;
  text-align: left;
  color: #3f4245;
}

.footer-copyright {
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid rgba(56, 56, 56, .2);
  height: 5.8rem;
  color: #383838;
  width: 95%;
  font-family: Inter;
  font-size: 14px;
  letter-spacing: .28px;
  margin: 0 auto;
  text-align: center;
}
.footer-copyright a {
  text-decoration: none;
  color: inherit;
}

/* Innerpage */

.page-content h1 {
  margin: 0 0 30px;
  font-family: PlayfairDisplay;
  font-size: 38px;
  font-weight: normal;
  font-style: normal;
  line-height: 1.42;
  letter-spacing: 1.52px;
  color: #3f3f3f;
}
.container {
  padding: 0;
}
.page main {
  background-color: #fff;
}
main ul li {
  position: relative;
}
.container.flex-row {
  padding-bottom: 13rem;
  display: flex;
  justify-content: flex-end;
  gap: 4rem;
  position: relative;
}
.page-content {
  width: 45.75%;
  max-width: 100%;
  padding: 12rem 0 0;
  color: #232323;
}
.page-content h1 {
  font-size: 3.8rem;
}
.page-content h2 {
  font-size: 3.2rem;
  font-family: 'Roboto';
  font-weight: 300;
  border-top: 1px solid #dddddd;
  padding-top: 7rem;
  margin-top: 7rem;
}
.page-content p {
  font-size: 1.6rem;
  font-family: 'Roboto';
  margin-bottom: 3rem;
}
.page-content h3 {
  margin-bottom: 4px;
}
.page-content p::after {
  clear: none;
}
.page-content a {
  color: #232323;
}
.page-content a:visited {
  text-decoration: none;
  color: #88644e;
}
.page-content a:hover {
  color: #88644e;
}
.page-content ul {
  position: relative;
  padding-left: 4.8rem;
  margin-bottom: 1rem;
  font-size: 1.6rem;
  line-height: 3.2rem;
  list-style: none;
  font-family: 'Roboto'
}
.page-content li::before {
  content: "";
  width: 2.9rem;
  height: 1px;
  position: absolute;
  left: -4rem;
  top: 1.6rem;
  background-color: rgba(63, 63, 63, 0.4);
}
main .container {
  max-width: 100%!important;
}
.sidebar {
  width: 35.25%;
  position: relative;
  background-image: url('./images/sidebar-background.webp');
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #f8f8f8;
  margin-bottom: 3rem;
}
.sidebar-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3rem;
  padding: 12rem 0 2rem;
  position: relative;
  left: 6rem;
}
.sidebar-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border: solid 1px rgba(63, 63, 63, 0.3);
  padding: 4rem 3rem 2rem 3rem;
  max-width: 50%;
  min-width: 39rem;
  color: #232323;
  position: relative;
}
.sidebar-card .small-heading {
  margin-top: 3.5rem;
}
.sidebar-card .large-heading {
  margin-top: 1.4rem;
  font-size: 32px;
}
.sidebar-card .large-heading span {
  font-weight: 600;
}
.sidebar-card p {
  margin-top: 1.6rem;
}
.sidebar-card .cta {
  margin-top: 3rem;
}
.sidebar-card .button {
  padding: 2.2rem 5.8rem;
  margin: 1rem 0 3.5rem;
  width: 322px;
}
.sidebar aside a {
  color: #232323;
}
.sidebar aside a:hover {
  color: #88644e;
}
.testimonials-inner p {
  margin: 30px 0 25px;
  font-family: Roboto;
  font-size: 15px;
  font-weight: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: 0.6px;
  text-align: center;
  color: #3f3f3f;
}
.testimonials-inner img {
  margin-bottom: .4rem;
}
.testimonial-author span {
  font-weight: 600;
}
.testimonial-author {
  margin-bottom: 3.5rem;
  text-transform: uppercase;
  font-size: 13px;
}
.sidebar .slider-buttons {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  width: 90%;
  border-top: 1px solid rgba(63, 66, 69, 0.2);
}
.testimonials-buttons {
  margin-bottom: 2rem;
}
.testimonials-inner button img {
  margin-top: 2rem;
}
.sidebar-container .more-reviews {
  display: flex;
  flex-direction: column;
  padding: 0 0 3rem 0;
  width: 31rem;
  gap: 1rem;
}
.sidebar-container .more-reviews a {
  text-decoration: none;
  color: inherit;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.sidebar-container .more-reviews div {
  display: flex;
  justify-content: center;
  gap: 3rem;
}
.prev-slide-testimonials-innerpage {
  border-right: 1px solid rgba(63, 66, 69, 0.2) !important;
  padding-right: 2rem;
}
i.icon {
  position: relative;
  width: 15px;
  height: 15px;
  bottom: 1px;
}
.sidebar-container .slider-buttons {
  display: flex;
  justify-content: center;
  position: relative;
  
}
.arrow {
  width: 96px;
  height: 7px;
  cursor: pointer;
}
.prev-slide:after, .next-slide:after {
  content: none!important;
}
.prev-slide, .next-slide {
  width: 96px;
}
.innerpage .hero-container {
  top: 64%;
}
.innerpage .hero-card {
  padding-block: clamp(2rem, 8vw, 4rem);
}


@media screen and (max-width: 1600px) {
  .hero .hero-container {
    top: 62%;
  }
  .hero .hero-card {
    padding-block: clamp(2rem, 8vw, 5rem);
  }

  .services .item:hover .text-container, .services .item.focused .text-container {
    bottom: 0;
  }
}

@media screen and (max-width: 1500px) {
  .hero .hero-card .large-heading {
    font-size: 30px;
  }
  .hero .hero-card {
    padding-block: clamp(2rem, 8vw, 3rem) clamp(1.5rem, 4vw, 2rem);
    gap: 2rem;
  }
}

@media screen and (max-width: 1280px) {

  .icon .bar {
    background: #000;
  }
  .menu-icon {
    left: 2rem;
    right: auto;
    top: 5rem;
    transition: all 0.5s ease;
  }
  #menu-main-menu-right {
    padding-left: 0;
  }
  .from-top.open {
    padding: 4rem 2rem 4rem 2rem !important;
    height: calc(94vh - var(--resp-header-height)) !important;
  }
  .nav-open .nav-primary {
    position: relative;
    top: 9rem;
  }
  .nav-primary #menu-main-menu > li > a, .nav-primary #menu-main-menu-right > li > a {
    font-size: 2rem;
  }
  .nav-primary ul > li > a {
    font-size: 2rem;
  }
  .nav-primary .menu-main-menu-container {
    all: unset;
  }
  .nav-primary .menu-main-menu-right-container {
    all: unset;
  }
  .nav-primary #menu-main-menu > li {
    margin: 2rem 0!important;
  }
  .nav-primary #menu-main-menu > li:first-child {
    margin-top: 0 !important;
  }
  #menu-main-menu {
    padding-top: 0;
  }
  #menu-main-menu-right {
    padding: 0;
  }
  .menu li {
    margin: 2rem 0;
  }
  .sub-menu li {
    margin: 1rem 0;
  }
  .sub-menu li a {
    padding: 1rem 2rem;
  }
  .sub-menu {
    width: 100%;
  }
  .nav-primary a:visited {
    color: #3f3f3f;
  }
  .header-phone {
    display: block;
    position: absolute;
    height: 40px;
    width: 40px;
    right: -2rem;
    left: auto;
    top: -1rem;
    margin-bottom: -10px;
    z-index: 2;
    transition: all 0.5s ease;
  }
  .phone-icon {
    right: 4.8rem!important;
    top: 100%!important;
  }
  .header-wrap {
    display: none;
  }
  /* header.stuck .logo {
    top: 4.3rem;
  } */
  header.stuck {
    height: 90px;
  }
  header.stuck .logo {
    width: 55px;
  }
  header.stuck .menu-icon {
    top: 3rem;
    z-index: 9;
  }
  header.stuck .header-phone {
    display: block;
  }
  header.stuck .menu-icon {
    display: block;
  }



  header {
    height: 90px;
  }
  header .logo {
    top: 5rem;
    width: 50px;
  }
  .header-wrap {
    display: none;
  }
  .menu-icon {
    display: block;
    position: absolute;
    z-index: 2;
    top: 3rem;
    left: 3rem;
  }
  .phone-number {
    display: none;
  }

  .hero .card-text {
    line-height: 1.5;
  }

  .doctor .slider-content {
    left: 10%;
  }

  .service-1, .service-2 {
    left: 6%;
  }

  .services {
    position: relative;
    max-width: 1920px;
    width: 100%;
    margin: 2rem 0 auto;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #fff;
  }
  .services .slider-buttons {
    display: flex;
  }
  .owl-carousel.owl-loaded {
    display: block!important;
  }
  .service-slider-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
  }
  .service-slider {
    all: unset!important;
    position: relative!important;
  }
  .services .owl-stage-outer {
    height: 100%;
  }
  .service-slider .item {
    max-width: 100%;
    align-items: center;
    background: #fff;
    padding-top: 2rem;
    padding: 0;
  }
  .services .item .hero-card {
    display: flex;
    width: 80%;
    margin: 0 auto;
    gap: 2rem;
  }
  .service-slider .hero-card {
    padding-block: clamp(2rem, 8vw, 2rem);
    padding-inline: none;
  }
  .service-slider .text-container .larger-text .large-heading {
    color: #3f3f3f;
  }
  .service-slider .text-container .number {
    display: none;
  }
  .learn-more-link {
    color: #3f3f3f;
  }
  .services .item.focused .text-container {
    bottom: unset;
  }
  .services .service-slider {
    z-index: 1!important;
    width: 100%!important;
  }
  .services .slider-buttons {
    z-index: 99;
    justify-content: center;
    padding-bottom: 3rem;
    display: flex;
    gap: 1.5rem;
    height: 65px;
    position: relative;

  }
  .prev-slide-service {
    border-right: 1px solid rgba(63, 66, 69, 0.2) !important;
    padding-right: 2rem;
  }
  .slide-prev, .slide-next {
    background: none;
    border: none;
  }
  .learn-more-link {
    opacity: 1;
    display: block;
  }
  .services .item:hover .learn-more-link,
  .services .item.focused .learn-more-link {
    display: block;
  }

  .office .hero-container {
    position: relative;
    order: 2;
    transform: none;
    left: unset;
    top: unset;
  }
  .office .hero-card {
    width: 65%;
    padding-block: 2rem 5rem;
  }
  .office-slider .item img {
    height: auto;
  }
  .office .slider-buttons {
    order: 1;
    border-top: none;
  }
  .office .slider-buttons img {
    margin-top: 1rem;
  }
  .office .small-heading {
    order: 2;
  }
  .office .large-heading {
    order: 3;
  }
  .office .card-text {
    order: 4;
  }

  .sidebar-container {
    left: 2rem;
    width: 35rem;
  }
}

@media screen and (max-width: 1024px) {

  .hero .hero-container {
    position: relative;
    top: unset;
    left: unset;
    transform: unset;
  }
  .hero .hero-card .large-heading {
    font-size: 38px;
  }
  .hero .hero-card {
    width: 80%;
  }

  .doctor {
    display: flex;
    flex-direction: column;
  }
  .doctor:before {
    content: none;
  }
  .doctor .slider-content {
    position: relative;
    left: unset;
    transform: unset;
    top: unset;
    margin: 0 auto;
    text-align: center;
    width: 95%;
  }
  .doctor .slider-content {
    color: #3f4245;
  }
  .doctor .slider-content .small-heading, .doctor .slider-content .large-heading, .doctor .slider-content .card-text {
    color:#3f4245
  }
  .membership {
    justify-content: center;
    margin-bottom: 2rem;
  }
  .slider-content .cta {
    align-items: center;
    color: #3f4245;
    margin: 0 auto;
  }
  .slider-content .cta img {
    filter: brightness(0) saturate(100%) invert(23%) sepia(6%) saturate(500%) hue-rotate(169deg) brightness(91%) contrast(84%);
  }

  

  .testimonials {
    gap: 5rem;
  }
  .testimonials-container {
    margin: 6rem 0 0;
  }
  .testimonials::before {
    content: none;
  }
  .testimonials .item {
    flex-direction: column;
    align-items: center;
  }
  .photo-container::before {
    height: 114%;
  }
  .testimonial-text {
    text-align: center;
    align-items: center;
    width: 80%;
  }
  .testimonials-slider .owl-stage .owl-item .active:nth-child(1) {
  justify-content: center!important;
  }
  .testimonials-slider .owl-stage .owl-item:nth-child(3) {
    justify-content: center!important;
  }
  .testimonials-slider .owl-stage .owl-item:nth-child(4) {
    justify-content: center!important;
  }
  .testimonials-slider .owl-stage .owl-item:nth-child(5) {
    justify-content: center;
  }
  .testimonials-slider .owl-stage .owl-item:nth-child(8) {
    justify-content: center;
  }
  .testimonials-slider .owl-stage .owl-item.active.active-slide {
    justify-content: center!important;
  }
  .testimonials .slider-buttons {
    margin-top: 0;
    gap: 0;
    padding-top: 0;
  }
  .testimonials .slider-buttons .prev-slide-testimonials {
    border-right: 1px solid rgba(63, 66, 69, 0.2) !important;
    padding-right: 2rem;
  }
  .testimonials .slider-buttons .next-slide-testimonials {
    padding-left: 2rem;
  }
  .testimonials .slider-buttons img {
    margin-top: 1rem;
  }

  .page-content {
    width: 90%;
    margin: 0 auto;
    padding: 2rem 0 0;
  }
  .sidebar {
    width: 100%;
    background-size: cover;
    margin-bottom: 0;
  }
  .container.flex-row {
    flex-direction: column;
    padding-bottom: 0;
  }
  .sidebar-container {
    justify-content: center;
    align-items: center;
    left: unset;
    width: 100%;
  }

  .footer-info {
    gap: 5rem;
  }
}

@media screen and (max-width: 768px) {


  .large-heading {
    text-align: center;
  }


  .membership {
    flex-direction: column;
  }
  .membership .card-text span {
    display: none;
  }


  .office .hero-card {
    width: 90%;
  }

  .footer-info {
    flex-direction: column;
    gap: 2rem;
    align-items: center;
    text-align: center;
  }
  .footer-item {
    align-items: center;
    text-align: center;
  }
  .footer-item p {
    text-align: center;
  }

}

@media screen and (max-width: 480px) {
  .large-heading {
    font-size: 32px;
  }
  .hero .hero-card .large-heading {
    font-size: 32px;
  }

}