/* 
Theme Name: centerville
Theme URI: https://www.keystride.com/
Description: A Dental Care Website 
Version:1.0
Author: Keystride
Author URI: https://www.keystride.com/
*/

/* Font converter */

@font-face {
  font-family: "Galano Grotesque Regular";
  src: url("assets/fonts/GalanoGrotesque-Regular.eot");
  src:
    url("assets/fonts/GalanoGrotesque-Regular.eot?#iefix")
      format("embedded-opentype"),
    url("assets/fonts/GalanoGrotesque-Regular.woff2") format("woff2"),
    url("assets/fonts/GalanoGrotesque-Regular.woff") format("woff"),
    url("assets/fonts/GalanoGrotesque-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Galano Grotesque Light";
  src: url("assets/fonts/GalanoGrotesque-Light.eot");
  src:
    url("assets/fonts/GalanoGrotesque-Light.eot?#iefix")
      format("embedded-opentype"),
    url("assets/fonts/GalanoGrotesque-Light.woff2") format("woff2"),
    url("assets/fonts/GalanoGrotesque-Light.woff") format("woff"),
    url("assets/fonts/GalanoGrotesque-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* 1. Base Font Settings */
html {
  font-size: 16px;
  /* Default base */
  font-weight: 400;
  line-height: 1.6;
}

body {
  font-family: "Jost";
  color: #5c4a3f;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Cormorant Garamond";
  font-weight: 400;
  font-style: normal;
  letter-spacing: normal;
}

/* 3. Headings and Paragraph Styles */
h1 {
  font-size: 2.25rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.75rem;
}

h4 {
  font-size: 1.625rem;
}

h5 {
  font-size: 1.44rem;
}

h6 {
  font-size: 1.2rem;
}

p {
  font-size: 1.063rem;
  font-weight: 400;
}

a {
  font-weight: 400;
  text-decoration: none;
}

/* a:hover {
  color: #D27546;
} */

li {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}

li > b {
  font-weight: 600;
}

.btn {
  font-size: 1rem;
  font-weight: 400;
  padding: 10px 30px;
  border-radius: 0px;
  border: none;
  transition: background 0.3s;
  font-family: "Galano Grotesque Regular", sans-serif;
}

.btn:focus,
.btn:focus-visible,
.btn:active {
  box-shadow: none;
  border: none;
  outline: none;
}

.btn.btn--icon > i {
  margin-left: 15px;
}

.btn-primary {
  background: #a0704a;
  color: #fff;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
  text-align: center;
  border: 2px solid transparent;
  color: #fff !important;
  padding: 0.75rem 2rem;
  border-radius: 2px;
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.btn-primary:hover {
  background: transparent !important;
  color: #a0704a !important;
  border: 2px solid #a0704a;
}

.cx-txt {
  font-family: "Galano Grotesque Regular", sans-serif;
}

/* .btn-secondary:hover {
  background: #D27546 !important;
  color: #fff;
} */

.btn-transparent.btn:hover {
  color: #000;
}

.btn-primary:focus,
.btn-primary:focus-visible,
.btn-primary:active,
.btn-primary:active:focus {
  background: #d27546 !important;
  color: #fff;
  box-shadow: none !important;
}

.btn-secondary {
  background: transparent;
  color: #5c4a3f;
  border: 1px solid #e8d5c0;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
  justify-content: center;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:focus-visible,
.btn-secondary:focus:active {
  background-color: #a0704a;
  color: #fff;
}

form input,
form select,
form textarea {
  width: 100%;
  border: 1px solid #e8d5c0;
  padding: 10px 10px;
  margin-bottom: 10px;
  background: #faf6f0;
  font-size: 16px;
  font-weight: 400;
  color: #000;
}

form input:focus-visible,
form select:focus-visible,
form textarea:focus-visible {
  outline: none;
}

form input::placeholder,
form textarea::placeholder {
  font-size: 16px;
  font-weight: 400;
  color: #cacaca;
}

form p.lable {
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 5px;
  color: black;
}

form .submit-btn p {
  opacity: 1;
  margin-bottom: 0;
}

form option {
  font-size: 16px;
}

form input[type="submit"] {
  width: 100%;
  font-size: 20px;
  background: #a0704a;
  color: white;
  margin-bottom: 0;
  padding: 10px 40px;
  box-shadow: none;
  outline: none;
  border: none;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
}

form input[type="submit"]:hover {
  background: transparent;
  color: #a0704a;
  border: 2px solid #a0704a;
}

h3.special-fonts {
  font-size: 3.125rem;
  font-weight: 300;
}

.text-justified {
  text-align: justify;
}

/*end*/

.bg-lightgray {
  background-color: #f0f5e9;
}

.bg-lightestgray {
  background-color: #fafafa;
}

.bg-darkgray {
  background-color: #c4c4c4;
}

.bg-darkestgray {
  background-color: #544e4c;
}

.bg-F8F4EF {
  background: #f5f5f5;
}

.bg-F6F1EB {
  background-color: #f0f5e9;
}

.bg-F8F4EF {
  background: #f5f5f5;
}

.bg-custom {
  background-color: #e3cbb2 !important;
}

.border-gray {
  border-color: #d1d1d1 !important;
}

.text-black {
  color: #000;
}

.fs-14 {
  font-size: 14px;
}

/*header*/
.header-top {
  background: #f3eee8;
}

.comfortsmiles-nav {
  background: #f3eee8;
}

/* Sticky position on scroll */
.comfortsmiles-header.is-sticky {
  position: fixed;
  top: 0;
  background: #fff;
  width: 100%;
  z-index: 999999;
}

.comfortsmiles-header.is-sticky .comfortsmiles-nav {
  top: 0px;
}

.comfortsmiles-header.is-sticky.is-sticky-full .comfortsmiles-nav {
  top: 51px;
}

.header-top.hide-header-top {
  display: none !important;
}

/*sticky*/
/* Smooth animation */
.main-nav.sticky {
  /* position: absolute;
  top: 90px; */
  width: 100%;
  z-index: 999999;
}

header,
.main-nav {
  transition:
    transform 0.3s ease,
    top 0.3s ease;
}

/* Sticky header on scroll up */
header.sticky-up {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transform: translateY(0);
}

/* Sticky nav when scrolling down */
.main-nav.sticky-down {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

/* Sticky nav below header on scroll up */
.main-nav.sticky-below-header {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 999;
}

/* Hide header when scrolling down */
header.hide {
  transform: translateY(-100%);
}

/*sticky ends*/

/* General Dropdown Styling */
#menu-main-menu {
  width: 100%;
  justify-content: flex-end;
}

.navbar-nav > li {
  position: relative;
}

.navbar-nav .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 250px;
  background-color: #f3eee8;
  z-index: 1000;
  padding: 0;
  list-style: none;
}

.navbar-nav .sub-menu li a {
  padding: 20px;
}

.navbar-nav .sub-menu li:hover > a {
  background: #d275463b;
  padding: 20px;
}

.navbar-nav .sub-menu .sub-menu {
  top: 0;
  left: 100%;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: 0;
}

/* Menu Links */
.navbar-nav .menu-item > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 10px;
  color: #000;
  font-weight: 400;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.3s ease;
}

.navbar-nav .menu-item.current-menu-item > a {
  font-weight: 800;
}

.navbar-nav .menu-item > a:hover {
  /* background-color: #f2f2f2; */
  color: #000;
}

/* FontAwesome Angle Icons */
.navbar-nav .menu-item-has-children > a::after {
  content: "\f107";
  /* angle-down */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-left: 10px;
  display: inline-block;
  transition: transform 0.3s ease;
  transform: rotate(0deg);
}

.navbar-nav > .menu-item > a {
  padding: 5px 20px;
  color: #5c4a3f;
  text-transform: uppercase;
}

.navbar-nav > .menu-item > a:hover {
  color: #2c2420;
  text-decoration: underline;
}

/* Deep nested: angle-right */
.navbar-nav .menu-item-has-children .menu-item-has-children > a::after {
  content: "\f107";
  /* angle-down */
  margin-left: auto;
}

ul#menu-menu-1 {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.menu-item a {
  color: #000;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.5px;
  transition: color 0.3s ease;
  text-decoration: none !important;
  font-family: "Galano Grotesque Regular", sans-serif;
}

.menu-item-has-children {
  position: relative;
}

ul.sub-menu li a {
  font-size: 14px;
}

ul.sub-menu li a:hover {
  font-size: 14px !important;
}

ul.sub-menu {
  background-color: transparent;
}

ul.sub-menu .menu-item a {
  margin-left: 0;
  margin-bottom: 0px;
  border-bottom: 0.5px solid #bdbdbd;
}

.menu-item-has-children {
  position: relative;
}

ul.sub-menu li a {
  font-size: 14px;
}

.menu-items {
  background-color: #f0f0f0;
  padding: 10px 0;
}

.menu-items .current-menu-item a {
  color: #000 !important;
  font-weight: 700;
}

.menu-items li a:hover {
  color: #000 !important;
  font-weight: 700;
  font-size: 16px;
}

/* General Dropdown Styling */
/*header*/

/* Popup */
#rebrandModal .modal-dialog {
  max-width: 650px;
}

#rebrandModal .modal-content {
  border-radius: 0;
  background: rgba(248, 244, 239, 1);
}

#rebrandModal h4 strong {
  font-weight: 500 !important;
  color: #d27546;
}

#rebrandModal p strong {
  font-weight: 800 !important;
}

#rebrandModal .max-w-5 {
  width: 550px;
}

#rebrandModal .btn-welcome {
  width: 150px;
}

#rebrandModal .badge {
  position: absolute;
  left: -10px;
  display: inline-block;
  background: #d27546;
  color: white;
  padding: 10px 0px;
  font-family: monospace;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  clip-path: polygon(0 0, 100% 0, 85% 100%, 0% 100%);
  width: 160px;
  height: 50px;
  border-radius: 0;
  line-height: 16px;
  margin-bottom: 0;
}

#rebrandModal .btn-close {
  position: absolute;
  right: 10px;
  background: transparent
    url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%239C3E00'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e");
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: center center;
  top: 15%;
}

#rebrandModal .btn-close:focus {
  outline: none;
  box-shadow: none;
}

/*banner*/

.banner-overlay-content {
  max-width: 900px;
  margin: 0 auto;
}
.banner-overlay-content .btn {
  margin-top: 10px;
}
.front__page_banner_custom .banner-overlay-content {
  display: flex;
  flex-direction: column; /* stack items vertically */
  align-items: center; /* center horizontally */
  text-align: center;
  gap: 15px;
}
.front__page_banner_custom {
  text-align: center;
}

.banner-overlay {
  position: absolute;
  /* background: rgba(0, 0, 0, 0.3); */
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 0.5) 40%,
    rgba(0, 0, 0, 0) 100%
  );
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.banner-title {
  color: #000;
  font-weight: 300;
}

.home .banner-subtitle,
.page-template-template-about-us .banner-subtitle {
  max-width: fit-content;
}

.banner-subtitle {
  font-size: 1rem;
  color: #000;
  font-weight: 400;
}

.page-template-template-about-us .banner-overlay-content,
.page-template-template-contact .banner-overlay-content,
.page-template-template-services-level2 .banner-overlay-content {
  text-align: center;
}

.page-template-template-about-us .banner-subtitle {
  margin: 0 auto;
  display: block;
}

.page-template-template-services .banner-overlay-content .btn,
.page-template-template-services-level1 .banner-overlay-content .btn,
.page-template-template-services-level2 .banner-overlay-content .btn {
}

.page-template-template-contact .banner-overlay-content .btn {
  display: none !important;
}

/*banner*/

/*hs section*/
/* First card big image */
.higlighted-service-section .service-img-large {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Two small cards images */
.higlighted-service-section .service-img-small {
  width: 260px;
  height: 100%;
  object-fit: cover;
}

.higlighted-service-section .service-box {
  background: #fffdfa;
  padding: 0;
  justify-content: center;
  height: 100%;
}

.higlighted-service-section .service-card-text {
  background: #f7f5f2;
  padding: 30px;
}

.learn-more-link {
  font-size: 14px;
  display: inline-block;
  text-decoration: underline;
  color: #000;
  font-family: "Galano Grotesque Light", sans-serif;
}

.learn-more-link:hover {
  color: #d27546;
}

/*hs section*/
/* our service section */
.all-service-link {
  font-size: 14px;
  margin-top: 15px;
  display: inline-block;
  text-decoration: underline;
  color: #000;
  font-family: "Galano Grotesque Light", sans-serif;
}

.our-services-grid .owl-dots {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.our-services-grid .owl-stage {
  margin-bottom: 40px;
}

.our-services-grid .owl-dot span {
  width: 120px;
  height: 2px;
  background: #d6d6d6;
  display: block;
  margin: 0 6px;
  transition: all 0.3s ease;
  border-radius: 0;
}

.our-services-grid .owl-dot.active span {
  background: #000;
  height: 2px;
  width: 140px;
}

.three-line-text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Meet our Dentist */
.section-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  font-size: 2rem;
  font-weight: 400;
  color: #000;
  position: relative;
}

.doctor-img {
  width: 100%;
  object-fit: cover;
  border-radius: 0;
}

/* Meet our Dentist Ends */

/* Easy finanving */
.easy-financing-section img {
  /* height: 60px;
  padding: 10px;
  border: 2px solid #000;
  width: 180px; */
}

.easy-financing-section img {
  border: 2px solid #f8f4ef;
}

.easy-financing-section img:hover {
  border: 2px solid #000;
}

/* Testimonial Section */
/* Make carousel items equal height */
.testimonial-carousel .owl-stage {
  display: flex;
}

.testimonial-carousel .owl-item {
  display: flex;
  height: auto !important;
}

.testimonial-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Testimonial Section  Ends*/

.why-us-wrapper {
  background: #f8f4ef;
  right: 70px;
  max-width: 500px;
}

/* Our service page */
/* New Our Service Sections Starts */
.service-item {
  display: block;
  width: 100%;
  text-align: left;
  border: none;
  background: none;
  font-size: 1.1rem;
  color: #777;
  padding: 0.75rem 0;
  border-bottom: 1px solid #eee;
}

.service-item:hover {
  color: #000;
}

.service-item.active {
  color: #000;
  font-weight: 500;
  border-bottom: 1px solid #878787;
}

.image-wrapper img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  /* border-radius: 30px; */
}

/* Remove any focus outlines or borders */
.service-item:focus,
.service-item:active,
.service-item:focus-visible {
  outline: none;
  border: none;
  box-shadow: none;
}

/* .services-content-box {
  border-radius: 30px;
  border: 1px solid #C8C8C8;
} */

/*services section*/
/* New Our Service Sections Ends */

/*intro section*/
.feature-grid .feature-box {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.feature-box img {
  width: 48px;
  height: 48px;
  margin-bottom: 15px;
}

.feature-box p {
  margin: 0;
  font-size: 15px;
  color: #222;
}

.feature-item {
  padding-bottom: 40px;
}

.feature-text {
  padding: 0 0px 0 40px;
  font-weight: 400;
}

.feature-text p {
  font-size: 1.25rem;
}

/*intro section*/

/*services section*/
.image-wrapper img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}

/* 
.services-content-box {
  border-radius: 30px;
  border: 1px solid #c8c8c8;
} */

.active-page {
  color: #d27546;
}

/* wrapper */
.service-menu-carousel {
  --mask: 45px;
  /* reserved space for arrows */
  position: relative;
}

/* stage + nav layering */
.service-menu-carousel .owl-stage-outer {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  padding: 0 10px;
}

/* add padding only if nav is active */
.service-menu-carousel:not(:has(.owl-nav.disabled)) .owl-stage-outer {
  padding: 0 var(--mask);
}

/* overlays (masks) */
.service-menu-carousel:has(.owl-prev:not(.disabled))::before,
.service-menu-carousel:has(.owl-next:not(.disabled))::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: var(--mask);
  background: #fff;
  z-index: 2;
  pointer-events: none;
}

/* Show overlay only if has-prev */
.service-menu-carousel.has-prev .owl-stage-outer::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 45px;
  height: 100%;
  background: #fff;
  z-index: 2;
}

/* Show overlay only if has-next */
.service-menu-carousel.has-next .owl-stage-outer::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 45px;
  height: 100%;
  background: #fff;
  z-index: 2;
}

.service-menu-carousel:has(.owl-prev:not(.disabled))::before {
  left: 0;
}

.service-menu-carousel:has(.owl-next:not(.disabled))::after {
  right: 0;
}

.service-menu-carousel .owl-prev.disabled,
.service-menu-carousel .owl-next.disabled {
  cursor: auto;
}

/* nav wrapper */
.service-menu-carousel .owl-nav {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
  /* only buttons clickable */
}

/* buttons */
.service-menu-carousel .owl-nav button {
  pointer-events: all;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 0;
  font-size: 20px;
  background: #f0f5e9;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}

/* position buttons inside padding */
.service-menu-carousel .owl-prev {
  position: absolute;
  left: 8px;
}

.service-menu-carousel .owl-next {
  position: absolute;
  right: 8px;
}

/* hover + icons */
.service-menu-carousel .owl-nav button span {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: #000;
}

.service-menu-carousel .owl-nav button:hover {
  background: #f0f5e9;
}

.service-menu-carousel .owl-nav button:hover span {
  color: #d27546;
}

.service-menu-carousel .owl-item a::after {
  content: "|";
  margin: 0 8px;
  color: #6c757d;
}

.service-menu-carousel .owl-item:last-child a::after {
  content: "";
  /* remove from last item */
}

#rebrandModalfinance .modal-dialog {
  max-width: 940px;
}

#rebrandModalfinance {
  background: rgba(255, 255, 255, 0.7);
  z-index: 9999999;
}

/*answers*/
.answers-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  /* THIS ensures space between buttons */
}

.answers-buttons a {
  justify-content: center;
  align-items: center;
  display: flex;
  width: 300px;
  padding: 15px 10px;
  box-sizing: border-box;
}

/*answers*/

/*insta/fb widget*/
.insta-fb-widget {
  border: 10px solid #48a79980;
  padding: 0;
}

.ti-widget[data-wkey="feed-instagram"][data-style="custom-style"][data-widget-type="social"] {
  margin-bottom: 0 !important;
}

.ti-widget[data-wkey="feed-instagram"] .ti-nav-loadmore {
  display: none !important;
}

.ti-widget[data-wkey="feed-instagram"] .ti-nav-loadmore .ti-btn {
  background: #544e4c !important;
  color: #fff !important;
}

.ti-widget[data-wkey="feed-instagram"][data-style="custom-style"][data-widget-type="social"]
  .ti-widget-header
  .ti-header-btn
  .ti-btn,
.ti-widget[data-wkey="feed-instagram"][data-style="custom-style"][data-widget-type="social"]
  .ti-widget-header
  .ti-header-btn
  .ti-btn:hover {
  background: #544e4c !important;
  color: #fff !important;
  outline: none !important;
}

/*insta/fb widget*/

/*ssj*/
.ssj h3 {
  color: #ffffff;
  font-weight: 600;
  font-size: 56px;
  line-height: 64px;
  letter-spacing: 0.2px;
  vertical-align: middle;
  color: #fff;
  text-align: left;
}

.ssj p {
  color: rgba(255, 255, 255, 0.7);
}

/*ssj*/

/*footer*/
.home .footer .border-bottom {
  border-top: 1px solid #d1d1d1 !important;
}
.footer .border-bottom {
  border-top: 1px solid #d1d1d1 !important;
}
.footer {
  background: #1a1210;
}

.footer h6 {
  font-family: "Galano Grotesque Light";
  font-size: 14px;
  font-weight: 500;
  color: #c49a72;
  text-transform: uppercase;
}

.footer p {
  font-family: "Galano Grotesque Light";
  font-weight: 300;
}

.footer form .signup-updates .form-control:focus {
  box-shadow: none;
}

.footer form .signup-updates .form-control::placeholder {
  color: #d5baa8;
}

.footer form .signup-updates .form-control {
  border-radius: 0;
}

.footer form .signup-updates input[type="submit"] {
  border-radius: 0;
  width: 120px;
  margin: 0 auto;
  font-size: 1rem;
  text-align: center;
  padding: 0.375rem 0.75rem;
  height: 36px;
  box-sizing: border-box;
  color: #d27546;
  width: 80px;
  transition:
    background 0.3s ease 0.1s,
    color 0.3s ease 0.1s;
}

.footer form .signup-updates input[type="submit"]:hover {
  background: #d78a52 !important;
  color: #fff !important;
}

.footer form .signup-updates p {
  margin-bottom: 0;
}

.footer .hours {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.footer .hour-row {
  display: flex;
  align-items: center;
  font-family: "Galano Grotesque Light";
  font-weight: 300;
  color: rgba(255, 255, 255, 0.45);
}

.footer .hour-row .day {
  min-width: 80px;
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.45);
}

.footer .hour-row .colon {
  margin: 0 10px;
  flex-shrink: 0;
}

.footer .hour-row .time {
  flex: 1;
}

.footer-menu {
  text-align: center;
  margin: 15px 0;
}

.footer-menu .current-menu-item a {
  font-weight: 600;
}

.footer-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 8px;
  flex-wrap: wrap;
}

.footer-nav li {
  display: inline-block;
}

.footer-nav a {
  color: rgba(255, 255, 255, 0.45);
  text-decoration: none;
  font-weight: 300;
  font-size: 14px;
  letter-spacing: 0.2px;
  transition: color 0.3s ease;
  font-family: "Galano Grotesque Light";
  text-transform: uppercase;
}

.footer-nav a:hover:after,
.footer-nav a:hover {
  color: #c49a72;
}

.service-nav {
  list-style: none;
  padding-left: 0;
}

.service-nav li a {
  font-family: "Galano Grotesque Light";
  font-weight: 300;
  color: rgba(255, 255, 255, 0.45);
}

.service-nav li a:hover {
  color: #c49a72;
}

#scrollToTopBtn {
  position: fixed;
  width: 50px;
  height: 50px;
  bottom: 30px;
  right: 15px;
  background-color: #a0704a;
  color: white;
  border-radius: 50%;
  font-size: 18px;
  z-index: 9999;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease;
}

#scrollToTopBtn.show {
  opacity: 1;
  visibility: visible;
}

/*Thank You*/
.thank-you-page {
  text-align: center;
  padding: 150px 0px 50px 0;
}

.thank-you-page h1 {
  color: #3e7b89;
}

.thank-you-page .btn-primary {
  background-color: #3e7b89;
  border-radius: 10px;
  color: #fff;
}

.thank-you-page .btn-primary:hover {
  background-color: #fff;
  color: #3e7b89;
}

.thank-you-page .content {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.thank-you-page .content img {
  width: 100%;
  height: auto;
  max-width: 590px;
  margin: 25px 0;
}

/*404*/
.error-404 {
  text-align: center;
  padding: 150px 0px 50px 0;
}

.error-404 h1 {
  color: #949494;
  font-weight: 600;
}

.error-404 h2 {
  color: #b0b6c5;
}

.error-404 .btn-primary {
  background-color: #d27546;
  border-radius: 10px;
  color: #fff;
}

.error-404 .btn-primary:hover {
  background-color: #d27546;
}

.error-404 img {
  width: 100%;
  height: auto;
  max-width: 590px;
  margin: 0 0 25px 0;
}

/*footer*/

/*About*/
.about-section .container {
  display: flex;
  gap: 58px;
}

.about-left {
  flex: 1 1 45%;
}

.about-left small {
  font-size: 14px;
  color: #555;
  display: block;
  margin-bottom: 8px;
}

.about-left h2 {
  font-size: 28px;
  margin-bottom: 16px;
}

.about-left p {
  font-size: 16px;
  color: #555;
  line-height: 1.6;
  margin-bottom: 20px;
}

.about-left img {
  width: 100%;
  border-radius: 12px;
  display: block;
}

.about-right {
  flex: 1 1 45%;
  background-color: #544e4c;
  color: #fff;
  padding: 24px;
  border-radius: 12px;
}

.about-right small.from-us {
  font-size: 14px;
  color: #ccc;
  display: block;
  margin-bottom: 12px;
  text-align: right;
}

.about-right p {
  margin-bottom: 16px;
  color: #fff;
}

/*about*/

/*faq*/
.faq-section h2 {
  font-size: 40px;
  font-weight: 300;
  margin-bottom: 30px;
}

.faq-item {
  border-bottom: 1px solid #ddd;
}

.faq-item:last-child {
  border-bottom: none;
}

.faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  border: none;
  background: transparent;
  padding: 20px 0;
  font-size: 24px;
  font-weight: 400;
  cursor: pointer;
  color: #bababa;
  /* Default color */
  transition: color 0.3s ease;
}

.faq-question:not(.collapsed) {
  color: #000;
  /* Active color */
}

.faq-answer {
  /* display: none; */
  /* padding: 0 0 20px 0; */
  padding: 0;
  font-size: 18px;
}

.faq-question:not(.collapsed) .arrow {
  transform: rotate(180deg);
}

.arrow {
  width: 36px;
  height: 36px;
  transition: transform 0.3s ease;
}

.faq-question {
  outline: none;
  border: none;
}

.faq-question:focus {
  outline: none;
  border: none;
  box-shadow: none;
}

/*faq*/

/* sis services */
.sis-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.sis-content {
  background: #fffdfa;
  flex-direction: column;
  justify-content: space-between;
}

.sis-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* sis services */

/*stats grid*/
.stats-grid {
  border: 1px solid #544e4c;
  border-radius: 1.5rem;
  padding: 2rem;
  margin-bottom: 70px;
}

.stat-item {
  padding: 1.5rem 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  position: relative;
}

.stat-item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 60%;
  background-color: #e5e7eb;
}

.stat-number {
  font-size: 60px;
  font-weight: 500;
  color: black;
  line-height: 1;
}

.stat-label {
  font-size: 20px;
  color: black;
  font-weight: 300;
  line-height: 1.4;
}

/*stats grid*/

/*blog*/
.blog-wrapper a,
.blog-wrapper a:hover {
  text-decoration: none !important;
}

.card-img-top {
  object-fit: cover;
}

.card {
  background: transparent;
}

.rounded-20px {
  border-radius: 20px;
}

.blog-wrapper h2 {
  font-weight: 600;
  font-size: 40px;
  line-height: 45px;
  letter-spacing: 0.2px;
  width: 60%;
}

.blog-wrapper p {
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0.2px;
  color: #fff;
}

.blog-wrapper .card-title {
  font-weight: 600;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: 0.2px;
  color: rgba(0, 0, 0, 1);
}

.blog-wrapper .card-text {
  font-weight: 300;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.2px;
  color: #000;
}

.page-numbers > li {
  display: inline-block;
}

.page-numbers {
  padding: 5px 15px;
  margin: 0 0.25rem;
  color: #313131;
  text-decoration: none;
  flex-direction: row;
  display: flex;
  list-style: none;
  justify-content: center;
}

.page-numbers:hover {
  color: #d27546;
}

.page-numbers .current {
  background-color: #fffdfa;
  color: #313131;
  border-color: #fffdfa;
  border-radius: 5px;
}

.page-numbers .current:hover {
  background-color: #313131;
  border-color: #313131;
  color: #fff;
}

.angled-arrow {
  transform: rotate(-30deg);
  display: inline-block;
}

.blogs-post-single .publish-date {
  color: #000;
}

.blogs-post-single p,
.blogs-post-single li {
  font-weight: 300;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0;
  color: #393939;
}

.blogs-post-single li {
  margin-bottom: 10px;
}

.blogs-post-single li:last-child {
  margin-bottom: 0;
}

.blogs-post-single h1 strong,
.blogs-post-single h2 strong {
  font-weight: 600 !important;
}

.blogs-post-single h2 {
  font-weight: 600;
  font-size: 35px;
  line-height: 45px;
  letter-spacing: 0.2px;
  color: #000;
}

.blogs-post-single h3 {
  font-size: 1.75rem;

  font-weight: 400;
  letter-spacing: 0;
  color: #000;
}

.blogs-post-single h4 {
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: 0;
  color: #000;
}

.blogs-post-single .card-content {
  font-weight: 300;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 0.2px;
  color: #000;
}

.blogs-post-single .btn-link {
  color: #000;
  text-decoration: none;
}

.blogs-post-single .btn-link a,
.blogs-post-single .btn-link:hover a {
  color: #000;
  text-decoration: none;
  font-weight: 600;
  font-size: 16px;
  line-height: 20px;
}

/*blog*/

/*candidate section*/
.candidate-section h2 {
  font-weight: 500;
  margin-bottom: 20px;
}

.candidate-section p {
  text-align: center;
  color: #000;
  max-width: 800px;
  margin: 0 auto 40px auto;
}

.candidate-content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.candidate-content .image img {
  max-width: 400px;
  width: 100%;
  border-radius: 8px;
}

.candidate-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.candidate-content ul li {
  font-size: 16px;
  margin-bottom: 16px;
  position: relative;
  padding-left: 24px;
}

.candidate-content ul li:before {
  content: "•";
  position: absolute;
  left: 0;
  font-size: 24px;
  line-height: 1;
}

.content-section.border-top {
  border-top: 1px solid #ddd;
}

/*candidate section*/

/*content section*/
.content-section.border-top {
  border-top: 1px solid #ddd;
}

/*content section*/

.ssj iframe,
.contact-section iframe {
}

.ssj .wpcf7 form.invalid .wpcf7-response-output,
.ssj .wpcf7 form.unaccepted .wpcf7-response-output,
.ssj .wpcf7 form.payment-required .wpcf7-response-output,
.ssj .wpcf7 form .wpcf7-response-output {
  color: #fff;
}

/*bordered wrapper*/
.bordered-wrapper {
  border: 1px solid #313131;
  padding: 20px;
}

.grecaptcha-badge {
  display: none;
}

.care-credit-wrapper h4 {
  font-weight: 400;
  font-size: 24px;
  line-height: 100%;
  letter-spacing: 0;
}

.care-credit-wrapper p {
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  vertical-align: middle;
}

.care-credit-wrapper {
  background: #f5f5f5;
}

.care-credit-wrapper img {
  border: 1px solid #fff;
}

.care-credit-wrapper img:hover {
  border: 1px solid #a0704a;
}

.payment-option-wrapper {
  border: 1px solid #f0f5e9;
  border-radius: 20px;
}

.care-credit-text {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  vertical-align: middle;
}

.page-template-template-contact .journey-form .submit-btn p {
  margin-bottom: 0;
}

.dentist-divider {
  color: #313131;
  margin: 10px 0 20px;
}

.page-template-template-contact
  .payment-option-wrapper
  .care-credit-wrapper
  h4 {
  font-weight: 400;
  font-size: 40px;
  line-height: 50px;
  letter-spacing: 0.2px;
  text-align: center;
}

.product-service-wrap {
  background: #f5f5f5;
}

.product-service-wrap img {
  width: 28px;
  margin-right: 10px;
}

.product-service-wrap .servicename {
  font-weight: 400;
  font-size: 18px;
  line-height: 28px;
  color: #000;
}

.product-service-wrap h4 {
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: 0.2px;
  text-align: center;
  color: #000;
}

.contact-section .contact-text {
  text-align: left;

  font-weight: 400;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: 0.2px;
}

.contact-section .contact-img img {
  width: 120px;
  height: 120px;
}

.footer .wpcf7-not-valid-tip,
.footer .wpcf7 form.invalid .wpcf7-response-output,
.footer .wpcf7 form.unaccepted .wpcf7-response-output,
.footer .wpcf7 form.payment-required .wpcf7-response-output,
.footer .wpcf7 form.sent .wpcf7-response-output {
  font-size: 13px;
  margin: 10px 0;
}

.contact-section .payment-option-wrapper .care-credit-wrapper p {
  font-style: normal;
  font-weight: 300;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0;
  text-align: center;
}

.section10.bg-white .wpcf7-not-valid-tip {
  text-align: left;
}

.section10.bg-white .journey-form .wpcf7 form.sent .wpcf7-response-output,
.section10.bg-white .wpcf7 form.invalid .wpcf7-response-output,
.section10.bg-white .wpcf7 form.unaccepted .wpcf7-response-output,
.section10.bg-white .wpcf7 form.payment-required .wpcf7-response-output {
  color: #000 !important;
  margin: 15px 0;
}

.section10.bg-white .journey-form option {
  background-color: #fff;
}

.section10.bg-white .journey-form input,
.section10.bg-white .journey-form select,
.section10.bg-white .journey-form textarea {
  color: #000;
}

.section10.bg-white .journey-form input::placeholder,
.section10.bg-white .journey-form textarea::placeholder,
.section10.bg-white .journey-form select {
  color: #cacaca;
}

.section10.bg-white .journey-form select option {
  color: #000;
}

.section10.bg-white .col-md-4 p {
  color: #000;
  opacity: 1;
}

.section10.bg-white .journey-form p.lable {
  color: #000;
  opacity: 1;
  text-align: left;
}

.section10.bg-white p.desc {
  color: #000;
}

.section10.bg-white .journey-form p {
  text-align: left;
}

.section10.bg-white .journey-form input.contact-form-btn {
  background: #3e7b89 !important;
  color: #fffdfa;
  transition:
    background 0.3s ease 0.1s,
    color 0.3s ease 0.1s;
}

.section10.bg-white .journey-form input.contact-form-btn:hover {
  background: #fffdfa !important;
  color: #3e7b89 !important;
  border: 1px solid #3e7b89;
}

.circle-button-white {
  width: 55px;
  height: 55px;
  border: 1.5px solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.circle-button-white .arrow-icon {
  width: 35px;
  height: 35px;
  transition: transform 0.6s ease;
}

.circle-button {
  width: 40px;
  height: 40px;
  border: 1.5px solid #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.circle-button .arrow-icon {
  width: 20px;
  height: 20px;
  transition: transform 0.6s ease;
}

.circle-button:hover .arrow-icon,
.circle-button-white:hover .arrow-icon {
  transform: rotate(360deg);
}

/*owl carousel*/
.consultation-section {
  overflow: hidden;
}

.consultation-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 auto;
}

.consultation-wrapper:before {
  content: "";
  position: absolute;
  left: 190px;
  right: 0;
  top: 50%;
  height: 4px;
  background-color: #555;
  border-radius: 2px;
  z-index: 0;
}

.consultation-label:before {
  content: "";
  position: absolute;
  left: 180px;
  top: 50.5%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-color: #555;
  border-radius: 50%;
  z-index: 1;
}

.consultation-label h3 {
  font-size: 20px;
  color: #333;
  margin: 0 0 10px;
  font-weight: 400;
}

.consultation-label h2 {
  font-size: 36px;
  margin: 0;
  font-weight: 500;
  letter-spacing: 0.4;
  line-height: 150%;
}

.owl-nav .consultation-arrow {
  display: inline-block;
  width: 40px;
  height: 40px;
  background: #544e4c;
  border-radius: 50%;
  position: relative;
  cursor: pointer;
}

.owl-nav .consultation-arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  transform: translate(-50%, -50%);
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15.951 12.332C15.5083 12.7745 15.5083 13.4921 15.951 13.9348L21.6748 19.6587C21.7528 19.7367 21.7528 19.8633 21.6748 19.9415L15.951 25.6653C15.5083 26.1079 15.5083 26.8255 15.951 27.2681C16.3935 27.7107 17.1111 27.7107 17.5536 27.2681L23.2775 21.5443C24.2408 20.5809 24.2408 19.0191 23.2775 18.0559L17.5536 12.332C17.1111 11.8893 16.3935 11.8893 15.951 12.332Z' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.consultation-container {
  position: relative;
  background: #f8f4ef;
  border: 1px solid #313131;
  border-radius: 20px;
  margin: 0 auto;
  padding: 20px 20px 20px 130px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 70%;
}

.consultation-image {
  position: absolute;
  top: 50%;
  left: -80px;
  transform: translateY(-50%);
  width: 200px;
  height: 200px;
  flex-shrink: 0;
}

.consultation-content {
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.consultation-content h2 {
  font-size: 28px;
  font-weight: 400;
  margin: 0 0 15px;
  display: flex;
  align-items: center;
}

.consultation-content .number {
  font-size: 96px;
  font-weight: 600;
  margin-right: 15px;
}

.consultation-content p {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  font-weight: 300;
}

.consultation-arrow {
  position: absolute;
  right: 60px;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  background: #544e4c;
  border-radius: 50%;
  cursor: pointer;
  z-index: 2;
}

.consultation-arrow:before {
  content: ">";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px;
}

/*owl carousel*/

.about-us-meet-ourdentist .dentist-card:last-child .row {
  margin-bottom: 0 !important;
}

.patient-form-text p,
.patient-form-text h2 {
  text-align: left;
}

.navbar-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  transition: all 0.4s ease;
  transform: rotate(0deg);
  width: 30px;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
  background-image: url('data:image/svg+xml,<svg viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg"><line x1="1" y1="26" x2="26" y2="1" stroke="rgba(0, 0, 0, 0.5)" stroke-width="2"/><line x1="1" y1="1" x2="26" y2="26" stroke="rgba(0, 0, 0, 0.5)" stroke-width="2"/></svg>');
  transition: all 0.4s ease;
  transform: rotate(90deg);
  width: 25px;
}

.blogs-post-single .title-container {
  color: #000;
  border-radius: 20px;
  background: rgba(204, 204, 204, 0.5);
}

.blogs-post-single .img-container img {
  border-radius: 20px;
}
/* =========================
   LIMA styles classes)
   ========================= */

/* new header */
/* =========================
   LIMA HEADER (new classes)
   ========================= */

/* Header wrapper */
.lima-header {
  background: white; /* matches your old .header-top bg */
}

/* replaces .header-top */
.lima-header-top {
  background: white;
  position: relative;
}

/* Sticky position on scroll (replaces .comfortsmiles-header.is-sticky) */
.lima-header.is-sticky {
  position: fixed;
  top: 0;
  background: #fff;
  width: 100%;
  z-index: 999999;
}

/* hide header-top when needed (replaces .header-top.hide-header-top) */
.lima-header-top.hide-header-top {
  display: none !important;
}

/* Smooth animation (kept same behavior) */
.lima-header,
.lima-main-nav {
  transition:
    transform 0.3s ease,
    top 0.3s ease;
}

/* Sticky header on scroll up (replaces header.sticky-up) */
.lima-header.sticky-up {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transform: translateY(0);
}

/* Hide header when scrolling down (replaces header.hide) */
.lima-header.hide {
  transform: translateY(-100%);
}

/* Logo block (replaces .logo) */
.lima-logo img {
  max-height: 70px; /* adjust if needed */
  width: auto;
  height: auto;
  display: inline-block;
}

/* Mobile contact bar (replaces .mobile-contact-bar) */
.lima-mobile-contact-bar {
  background: white;
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

/* Mobile contact items (replaces .contact-item) */
.lima-contact-item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lima-contact-item i {
  color: black;
  font-size: 15px;
}

.lima-contact-item a,
.lima-contact-item span {
  color: #000;
  font-size: 14px;
  font-family: "Galano Grotesque Regular", sans-serif;
  text-decoration: none;
}

/* Main nav wrapper (replaces .main-nav.sticky) */
.lima-main-nav.sticky {
  width: 100%;
  z-index: 999999;
}

/* Sticky nav when scrolling down (replaces .main-nav.sticky-down) */
.lima-main-nav.sticky-down {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

/* Sticky nav below header on scroll up (replaces .main-nav.sticky-below-header) */
.lima-main-nav.sticky-below-header {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 999;
}

/* Nav background (replaces .comfortsmiles-nav) */
.lima-nav {
  background: white;
}

/* Keep your existing menu layout rules intact */
.lima-nav #menu-main-menu {
  width: 100%;
  justify-content: space-between;
}

/* If your logo sits too high/low compared to menu, adjust these */
@media (min-width: 992px) {
  .lima-logo {
    padding: 10px 0;
  }
}

/* Home Page Services */
/* ===========================
   Highlighted Services (all)
   Reference-style component
   =========================== */

.lima-feature-card {
  background: #fff;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 26px;
}

.lima-featire-card__img {
  max-width: 610px;
  max-height: 600px;
}

.lima-feature-card__img img {
  width: 100%;
  height: 100%;
  max-height: 420px;
  object-fit: cover;
  display: block;
}

/* Right side content should sit at the bottom */
.lima-feature-card__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end; /* bottom align all content */
  height: 100%; /* important so flex-end has space */
  padding: 10px 10px 0;
  text-align: left; /* ensures no center text */
}

/* Make sure the grid row stretches so the content can align bottom */
.lima-feature-card {
  align-items: stretch;
}

.lima-feature-card__dash {
  width: 40px;
  height: 3px;
  background: #313131;
  display: inline-block;
  margin-bottom: 14px;
}

.lima-feature-card__title {
  margin: 0 0 14px 0;
}

.lima-feature-card__text {
  margin-bottom: 18px;
}

.lima-feature-card__divider {
  display: block;
  height: 1px;
  background: rgba(0, 0, 0, 0.35);
  margin-top: 22px;
}

/* Responsive */
@media (max-width: 991px) {
  .lima-feature-card {
    grid-template-columns: 1fr;
    padding: 18px;
    gap: 16px;
  }

  .lima-feature-card__img img {
    max-height: 320px;
  }

  .lima-feature-card__content {
    padding: 8px 6px 0;
  }
}

/* Our Services TC */
/* Only for this "Our Services" grid (matches screenshot style) */
.lima-services-grid {
  padding: 40px 0;
}

.lima-services-title {
  margin-bottom: 22px;
}

.lima-service-tile {
  display: block;
  position: relative;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  overflow: hidden;
  text-decoration: none;
}

.lima-service-tile__img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  display: block;
}

.lima-service-tile__label {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  font-size: 13px;
  color: #222;
  background: rgba(255, 255, 255, 0.65);
  padding: 4px 8px;
}

.lima-services-more {
  margin-top: 18px;
}

.lima-services-more a {
  color: #000;
  text-decoration: underline;
  font-size: 14px;
  font-family: "Galano Grotesque Light", sans-serif;
}

/* Meet Our Dentists (matches screenshot style) */
.lima-dentist-card {
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
}

.lima-dentist-card__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  background: #ddd;
}

/* Bottom translucent strip */
.lima-dentist-card__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 18px 12px 14px;
  text-align: center;

  background: rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(2px);
}

.lima-dentist-card__name {
  color: #fff;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 400;
}

.lima-dentist-card__role {
  color: rgba(255, 255, 255, 0.75);
  font-size: 12px;
  margin-top: 4px;
  font-family: "Galano Grotesque Light", sans-serif;
}

/* SEO section like screenshot: small center gap + teal borders + 700px height */
.lima-seo-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px; /* small gap between left and right */
  background: transparent; /* so the gap shows */
}

/* Left block */
.lima-seo-card__left {
  border: 1px solid #3e7b89;
  background: #fff;
  padding: 26px 26px 18px;

  display: flex;
  flex-direction: column;
  height: 700px; /* requested height */
}

/* Keep CTA at the bottom */
.lima-seo-card__cta {
  margin-top: auto;
}

/* Right block */
.lima-seo-card__right {
  background: #fff;
  height: 700px; /* match left height */
  overflow: hidden;
}

.lima-seo-card__right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Responsive */
@media (max-width: 991px) {
  .lima-seo-card {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .lima-seo-card__left,
  .lima-seo-card__right {
    height: auto;
  }

  .lima-seo-card__right img {
    height: 320px;
  }
}

.bg-F5F5F5 {
  background-color: #f5f5f5;
}

/* about us meet the doctors section */
.about-us-meet-ourdentist h2 {
  font-size: 34px;
}

.meet-dentist-item__name {
  font-size: 32px;
  margin: 0 0 14px;
  color: var(--bronze);
}
.section-line-abt {
  width: 50px;
  height: 1px;
  background: #c4964a;
  margin-bottom: 1rem;
}
.meet-dentist-item__desc {
  line-height: 1.8;
  margin-bottom: 18px;
}
.meet-dentist-item__desc p {
  font-size: 15px;
}
.meet-dentist-item__link {
  font-size: 12px;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
}

@media (max-width: 767px) {
  .meet-dentist-item {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .meet-dentist-item__img {
    max-width: 360px;
  }
}

/* Services */
/* Desktop: heading spacing */
.services-right-title {
  margin-bottom: 18px;
}

/* Desktop: thumbnails row */
.services-thumbs {
  gap: 16px;
  margin-bottom: 22px;
  overflow-x: auto;
  padding-bottom: 8px;
}

.services-thumb {
  border: 0;
  padding: 0;
  background: transparent;
  width: 140px;
  height: 92px;
  flex: 0 0 auto;
  opacity: 0.65;
}

.services-thumb.active {
  opacity: 1;
}

.services-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Desktop: details layout (image left, content right) */
.service-detail {
  display: grid;
  grid-template-columns: 440px 1fr;
  gap: 28px;
  align-items: start;
}

.service-detail .image-wrapper img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.services-fullwidth {
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

/* Our Services styles */
/* Prevent horizontal overflow (the common cause of the right push) */
.services-section {
  overflow-x: hidden;
}

/* Bigger thumbnails */
.services-thumbs {
  display: flex;
  gap: 14px;
  margin-top: 16px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.services-thumb {
  padding: 0;
  border: 0;
  background: transparent;
  line-height: 0;
}

.services-thumb img {
  width: 140px; /* wider */
  height: 90px; /* taller */
  object-fit: cover;
  display: block;
}

/* Make the main image area wider */
.service-detail {
  display: grid;
  grid-template-columns: 460px 1fr; /* increase left column */
  gap: 22px;
  align-items: start;
}

@media (max-width: 767px) {
  .service-detail {
    grid-template-columns: 1fr;
  }
  .services-thumbs {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
}

/* banner */
/* Banner wrapper (NOTE: class name corrected to match your markup) */
.front_page_banner_custom {
  width: 100%;
  position: relative;
}

.front_page_banner_custom img {
  display: block; /* removes image whitespace gap */
  width: 100%;
  height: auto;
}

/* Full-width bar overlayed on image */
.front_page_banner_custom .banner-contact-bar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 10;
  background: rgba(255, 255, 255, 0.75); /* like screenshot */
  backdrop-filter: blur(2px); /* optional */
}

/* Icons inside the bar */
.front_page_banner_custom .banner-contact-bar .banner-icon {
  color: #d27546;
  font-size: 15px;
}

/* Ensure mobile spacing is clean */
@media (max-width: 575px) {
  .front_page_banner_custom .banner-contact-bar .d-flex {
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }
}

/* Testimoials */
/* Testimonials */
/* Testimonials layout: quotes in one div, heading+carousel in another */
.lima-testimonial-layout {
  display: flex;
  align-items: flex-start;
  gap: 28px;
}

/* Quotes block (separate div) */
.lima-testimonial-quotes {
  display: flex;
  gap: 10px;
  flex: 0 0 auto;
  margin-top: 4px;
}

.lima-testimonial-header__quote {
  width: 42px;
  height: auto;
  display: block;
}

/* Content block (heading + carousel) */
.lima-testimonial-content {
  flex: 1 1 auto;
}

.lima-testimonial-header__title {
  margin: 18px 0px;
}

/* Now that everything is inside the same content div,
   no manual left margins needed */
.lima-testimonial-slide__text {
  margin: 0 0 22px 10px;
  line-height: 1.8;
}
.lima-testimonial-header__quotes {
  display: flex;
  gap: 10px;
}

.lima-testimonial-slide__author {
  margin-left: 10px;
  font-size: 20px;
}

@media (max-width: 767px) {
  .lima-testimonial-layout {
    gap: 16px;
  }
}

/* Banner text*/
.banner-text {
  font-weight: 400;
  font-size: 24px;
  text-decoration: underline;
  text-decoration-color: #197475;
  color: #197475;
}

/* Banner container */
.banner-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.service-card h5 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
}

.service-card p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
}

.service-card__image {
  width: 100%;
  height: 320px;
  object-fit: cover;
}

.service-card__desc {
  font-size: 1rem;
  color: #000;
  text-align: left;
  min-height: 170px;
}

/* ==============================
   CONTENT SECTIONS
============================== */
.periodontist-sections {
  background-color: #fff;
}

.content-section {
  padding: 2rem 0;
  border-bottom: 1px solid #f0f0f0;
}

.content-section:last-child {
  border-bottom: none;
}

.content-section__heading {
  font-size: 3rem;
  color: #1a1a1a;
  margin-bottom: 1rem;
}

.content-section__text {
  font-size: 0.95rem;
  color: #555;
  line-height: 1.8;
}

.content-section__image {
  width: 100%;
  height: 400px;
  object-fit: cover;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}
.my-80 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}
.pt-40 {
  padding-top: 4rem !important;
}
.btn--icon {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
}

/* Photo Gallery Section */
.photo-gallery-section {
  background: #fafafa;
}

.photo-gallery-title {
  font-size: 2rem;
}
.photo-gallery-carousel {
  position: relative;
}

/* NAV WRAPPER */
.photo-gallery-carousel .owl-nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  z-index: 999;
  pointer-events: none;
}

/* BUTTONS */
.photo-gallery-carousel .owl-nav button.owl-prev,
.photo-gallery-carousel .owl-nav button.owl-next {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  font-size: 0;
  pointer-events: auto;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
}
.services-grid-clean h2 {
  font-family: serif;
  font-size: 28px;
}

/* CARD */
.service-card-clean {
  text-decoration: none;
}

/* IMAGE WRAPPER */
.service-image {
  position: relative;
  overflow: hidden;
}

/* IMAGE */
.service-image img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  display: block;
}

/* OVERLAY STRIP (FULL WIDTH) */
.service-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50px;

  background: rgba(255, 255, 255, 0); /* hidden initially */
  backdrop-filter: blur(0px);

  transition:
    background 0.4s ease 0.15s,
    backdrop-filter 0.4s ease 0.15s;
  z-index: 1;
}
/* DEFAULT STATE */
.service-label {
  position: absolute;
  top: 10px;
  left: 10px;
  font-size: 13px;
  color: #333;
  z-index: 2;

  /* smooth animation */
  transition:
    transform 0.5s ease,
    top 0.5s ease,
    left 0.5s ease,
    font-size 0.5s ease,
    color 0.3s ease;
}

/* HOVER STATE */
.service-card-clean:hover .service-overlay {
  left: 50%;
  transform: translateX(-50%) scale(1.1);
  font-size: 13px;
  color: #000;
  background: #ffffff4d;
  backdrop-filter: blur(30px);
  height: 32px;
}
.service-card-clean:hover .service-label {
  left: 50%;
  transform: translateX(-50%) scale(1.1);
  font-size: 13px;
  color: #000;
}
/* VIEW MORE */
.view-more {
  display: inline-block;
  margin-top: 10px;
  font-size: 14px;
  text-decoration: underline;
  color: #000;
}

/* NEW ADDITIONS */
:root {
  --bronze: #a0704a;
  --bronze-light: #c49a72;
  --bronze-pale: #e8d5c0;
  --ivory: #faf6f0;
  --ivory-warm: #f2eae0;
  --charcoal: #2c2420;
  --charcoal-mid: #5c4a3f;
  --text-body: #4a3a30;
  --white: #ffffff;
  --gold-line: #c4964a;
  --ff-display: "Cormorant Garamond", Georgia, serif;
  --ff-body: "Jost", sans-serif;
  --transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --shadow-soft: 0 12px 48px rgba(100, 60, 20, 0.1);
  --shadow-card: 0 4px 24px rgba(100, 60, 20, 0.08);
}

/* ===== HERO ===== */

#hero {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding-top: 80px;
  min-height: 900px;
  background: var(--charcoal);
}

/* Background Images */
.hero-bg-img {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero-bg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Overlay */
.hero-bg-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(44, 36, 32, 0.9) 0%,
    rgba(44, 36, 32, 0.72) 35%,
    rgba(44, 36, 32, 0.1) 70%,
    transparent 100%
  );
  z-index: 1;
}

/* Keep content above image */
#hero .container,
.hero-content,
.hero-badge {
  position: relative;
  z-index: 2;
}

/* Desktop Image */
.hero-bg-desktop {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Mobile Image */
.hero-bg-mobile {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Mobile Hero */
@media (max-width: 767px) {
  #hero {
    min-height: 700px;
    padding-top: 100px;
  }

  .hero-bg-img::after {
    background: linear-gradient(
      180deg,
      rgba(44, 36, 32, 0.8) 0%,
      rgba(44, 36, 32, 0.55) 45%,
      rgba(44, 36, 32, 0.2) 100%
    );
  }
}
.hero-content {
  position: relative;
  z-index: 1;
  padding: 5rem 0 5rem;
}
.hero-eyebrow {
  font-family: var(--ff-body);
  font-size: 0.72rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--bronze-light);
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hero-eyebrow::before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 1px;
  background: var(--bronze-light);
}
.hero-h1 {
  font-family: var(--ff-display);
  font-size: clamp(3rem, 6vw, 5.5rem);
  font-weight: 300;
  color: #fff;
  line-height: 1.05;
  margin-bottom: 1.75rem;
  letter-spacing: -0.01em;
}
.hero-h1 em {
  font-style: italic;
  color: var(--bronze-light);
}
.hero-sub {
  font-size: 1.05rem;
  color: rgba(255, 255, 255, 0.72);
  max-width: 460px;
  margin-bottom: 2.5rem;
  line-height: 1.8;
  font-weight: 300;
}
.hero-btns {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.hero-badge {
  position: absolute;
  bottom: 3rem;
  right: 5%;
  background: rgba(160, 112, 74, 0.15);
  border: 1px solid rgba(196, 150, 114, 0.4);
  backdrop-filter: blur(8px);
  padding: 1.5rem 2rem;
  text-align: center;
  z-index: 1;
  animation: floatBadge 4s ease-in-out infinite;
}
@keyframes floatBadge {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}
.hero-badge strong {
  display: block;
  font-family: var(--ff-display);
  font-size: 2.2rem;
  font-weight: 300;
  color: #fff;
  line-height: 1;
}
.hero-badge span {
  font-size: 0.65rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bronze-light);
}

/* New styles  */

/* Financing */
.insurance-card {
  background: #ffffff;
  border: 1px solid #e8d5c0;
  padding: 24px;
  height: 100%;
  text-align: left;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
}

.insurance-icon-wrap {
  width: 40px;
  height: 40px;
  border: 1px solid #e8d5c0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
}
.insurance-card:hover {
  border-color: #c49672;
  box-shadow: 0 8px 20px rgba(196, 150, 114, 0.15);
}

.insurance-card:hover .insurance-icon-wrap {
  border-color: #c49672;
  background: rgba(196, 150, 114, 0.08);
}
.insurance-card-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.insurance-card-title {
  font-size: 20px;
  font-weight: 400;
  color: #2c2420;
  margin-bottom: 15px;
}

.insurance-card-description {
  font-size: 16px;
  line-height: 1.8;
  color: #5c4a3f;
  margin-bottom: 0;
}
.carecred-wrap {
  background: #ffffff;
  border: 1px solid #e8d5c0;
}
.pay-options {
  background: #ffff;
  padding: 20px 30px;
  border: 1px solid #e8d5c0;
}
.custom-title {
  margin-bottom: 1rem;
  word-spacing: 5px;
}
.custom-des {
  margin-bottom: 2rem;
}
.custom-sub-title {
  letter-spacing: 2px;
  color: #a0704a;
  font-size: 12px;
}
.section-line {
  width: 50px;
  height: 1px;
  background: #c4964a;
  margin: 20px auto 0;
  margin-bottom: 1rem;
}
.center-consultation-cta {
  background: #2d211d;
  padding: 100px 0;
}

.center-consultation-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 80px;
  margin: 0 40px;
}

.center-consultation-content {
  flex: 1;
  max-width: 650px;
  text-align: left;
}

.center-office-hours-card {
  border: 1px solid rgba(196, 150, 114, 0.2);
  padding: 2.5rem 2rem;
  width: 350px;
  color: rgba(255, 255, 255, 0.4);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.center-office-hours-card img {
  margin-bottom: 30px;
}
.center-office-hours-card h3 {
  color: rgba(255, 255, 255, 0.55);
}

.center-hours-row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  font-size: 0.82rem;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
  margin: 0;
}
.center-eyebrow-text {
  color: #c49a72;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
  display: block;
}

.center-consultation-content h2 {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 1.5rem;
  font-size: 42px;
}
.center-consultation-content em {
  font-style: italic;
  color: var(--bronze-light);
}
.center-consultation-content p {
  color: rgba(255, 255, 255, 0.55);
  max-width: 480px;
  line-height: 1.9;
  text-align: left;
}
.consultation-phone-btn {
  border: 2px solid rgba(255, 255, 255, 0.35);
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
  text-align: center;
  color: #fff !important;
  padding: 0.75rem 2rem;
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.consultation-phone-btn:hover {
  background: #a0704a;
  color: #a0704a;
  border: 2px solid transparent;
}
.care-credit-section {
  background: linear-gradient(90deg, #2d2320 0%, #4a3a33 55%, #6d5647 100%);
  color: rgba(255, 255, 255, 0.55);
  padding: 4rem 3rem;
  text-align: left;
}
.care-credit-section p {
  font-size: 0.92rem;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1.9;
  margin-bottom: 1.25rem;
}
.eyebrow-text {
  display: inline-block;
  color: #c38b5b;
  font-size: 14px;
  letter-spacing: 3px;
  text-transform: uppercase;
  margin-bottom: 24px;
}

.care-credit-title {
  line-height: 1.2;
  font-weight: 400;
  margin-bottom: 10px;
}

.care-credit-title em {
  color: #c38b5b;
  font-style: italic;
}

.care-credit-description {
  font-size: 14px;
  line-height: 2;
  color: rgba(255, 255, 255, 0.8);
}

.steps-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.steps-top {
  display: flex;
  gap: 30px;
}

.step-card {
  flex: 1;
  border: 1px solid rgba(195, 139, 91, 0.25);
  min-height: 170px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  text-align: center;
  padding: 30px;
}

.step-card h3 {
  color: #c38b5b;
  font-size: 2.5rem;
  font-weight: 400;
  margin-bottom: 15px;
}

.step-card p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.82rem;
  line-height: 1.6;
  margin: 0;
}

.step-card-large {
  min-height: 200px;
}
.care-credit-btn-wrap {
  margin-top: 40px;
}

.care-credit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 380px;
  min-height: 70px;
  padding: 20px 30px;
  background: #a0704a;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 18px;
  font-weight: 600;
  transition: all 0.3s ease;
}

.care-credit-btn:hover {
  color: #a0704a;
  opacity: 0.9;
  border: 2px solid #a0704a;
  background: transparent;
}

/* About Section  */
.about-section .hours-row {
  display: flex;
  justify-content: space-between;
  padding: 0.4rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.45);
  gap: 12px;
}
.about-section .center-office-hours-card p {
  color: #fff;
  font-size: 1.25rem;
  font-weight: 400;
  margin-bottom: 1.25rem;
}
.about-section .center-office-hours-card img {
  display: none;
}
.about-section .center-office-hours-card {
  color: #fff;
  font-weight: 400;
  margin-bottom: 1.25rem;
}
.about-overview__wrapper {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
}

.who-we-are-card,
.our-promise-card {
  background: #fff;
  padding: 50px;
  border: 1px solid #e8d5c0;
}
.who-we-are-card {
  border-left: 4px solid #e8d5c0;
}
.who-we-are-card h2 {
  font-size: 38px;
}
.who-we-are-card p {
  margin-bottom: 50px;
  font-size: 15px;
}

.about-stats-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding-top: 40px;
  border-top: 1px solid #e8d5c0;
}

.about-stat-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.about-stat-item h3 {
  margin: 0;
  font-size: 45px;
  font-weight: 400;
  line-height: 1;
  color: #a0704a;
  font-family: "Cormorant Garamond", serif;
}

.about-stat-item span {
  margin-top: 10px;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #5c4a3f;
  line-height: 1.4;
}

.promise-list {
  margin: 30px 0;
}

.promise-item {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  align-items: flex-start;
}
.fa-check-circle {
  color: #a0704a;
}
/* Patient form  */
.patient-form-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.patient-form-buttons .btn {
  width: 100%;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
  display: flex;
  font-size: 13px;
  justify-content: space-between;
  align-items: center;
  padding: 10px 25px;
  background: #ffff;
  border: 1px solid #d9c8b6;
}

.patient-form-buttons .btn:hover {
  background-color: #a0704a;
  color: #ffff;
  border: 1px solid #a0704a;
}
.btn-content {
  display: flex;
  align-items: center;
  gap: 15px;
}

.btn--icon i {
  color: inherit;
}

/* contact form  */
.footer-contact {
  margin-top: 30px;
  margin-bottom: 50px;
}
.contact-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.contact-item h6 {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  font-weight: bold;
  text-transform: uppercase;
  color: #2c2420;
  margin-bottom: 0.1rem;
  font-family: "Jost";
}
.section-label {
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #a0704a;
  margin-bottom: 0.75rem;
  display: block;
}
.contact-info-box h2 {
  margin-bottom: 1rem;
}
.divider-line-left {
  width: 48px;
  height: 1px;
  background: var(--gold-line);
  margin: 1.25rem 0;
}
.contact-info-box p {
  font-size: 0.92rem;
  color: #5c4a3f;
  line-height: 1.9;
  margin-bottom: 1.5rem;
}
.contact-form-wrapper {
  background: #ffffff;
  padding: 3rem 2.5rem;
  border: 1px solid #e8d5c0;
  padding: 50px;
  max-width: 650px;
  margin-left: auto;
}

/* Header styling  */
.lima-header {
  background: #f5f2ee;
}

.header-row {
  min-height: 110px;
  display: flex;
  align-items: center;
}

.header-logo {
  flex: 0 0 auto;
}
.header-logo img {
  width: 220px;
}

.header-menu {
  flex: 1;
  display: flex;
  justify-content: center;
}

.header-btn {
  flex: 0 0 auto;
}

.book-now-btn {
  background: #a9794a;
  transition:
    0.3s ease 0.1s,
    color 0.3s ease 0.1s;
  color: #fff;
  padding: 14px 28px;
  text-decoration: none;
}
.book-now-btn:hover {
  background: transparent;
  color: #a9794a;
  border: 2px solid #a9794a;
}

.mobile-header {
  padding: 15px 20px;
}
/* Footer section */

.footer-title {
  font-size: 1.55rem !important;
  font-weight: 600 !important;
  color: #fff !important;
  margin-bottom: 20px !important;
}
.footer-des {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
}
.footer-des__1 {
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
}
/* =========================================
HERO SECTION
========================================= */

.custom-hero-grid {
  display: flex;
  justify-content: space-between;
  gap: 60px;
  align-items: flex-start;
}

.custom-hero-left {
  width: 60%;
}

.custom-hero-title {
  line-height: 1.2;
  margin-bottom: 30px;
  font-weight: 400;
  color: #222;
}

.custom-hero-desc {
  max-width: 700px;
  font-size: 18px;
  line-height: 1.9;
  color: #555;
  font-family: "Cormorant Garamond";
}

.custom-hero-right {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 40px;
  gap: 1rem;
}

.custom-hero-small-text {
  margin-bottom: 20px;
  font-size: 16px;
  color: #444;
  text-align: center;
}

.custom-hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  height: 58px;
  border: 1px solid #55573e;
  border-radius: 10px;
  text-decoration: none;
  color: #55573e;
  font-size: 22px;
  transition: 0.3s ease;
}

.custom-hero-btn:hover {
  background: #55573e;
  color: #fff;
}

/* ===== WHY CHOOSE US ===== */
#why-us {
  background: var(--color-orange-15, #2c2420);
  padding: 6rem 0;
  position: relative;
  overflow: hidden;
}
#why-us::before {
  content: "";
  position: absolute;
  top: -80px;
  right: -80px;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(160, 112, 74, 0.12) 0%,
    transparent 70%
  );
  pointer-events: none;
}
.why-us-header {
  margin-bottom: 4rem;
}
.why-us-header h2 {
  font-size: clamp(2.4rem, 4vw, 3.5rem);
  font-weight: 300;
  color: #fff;
}
.why-us-header .section-label {
  color: var(--bronze-light);
}

.usp-card {
  padding: 2.5rem 2rem;
  border: 1px solid rgba(196, 150, 114, 0.2);
  height: 100%;
  transition:
    border-color var(--transition),
    background var(--transition);
  position: relative;
  overflow: hidden;
}
.usp-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--bronze);
  transition: width 0.5s ease;
}
.usp-card:hover::after {
  width: 100%;
}
.usp-card:hover {
  border-color: rgba(196, 150, 114, 0.45);
  background: rgba(255, 255, 255, 0.03);
}
.usp-icon {
  width: 52px;
  height: 52px;
  border: 1px solid rgba(196, 150, 114, 0.35);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  color: var(--bronze-light);
  font-size: 1.4rem;
  transition:
    background var(--transition),
    border-color var(--transition);
}
.usp-card:hover .usp-icon {
  background: var(--bronze);
  border-color: var(--bronze);
  color: #fff;
}
.usp-card h4 {
  font-size: 1.35rem;
  font-weight: 400;
  color: #fff;
  margin-bottom: 0.75rem;
}
.usp-card p {
  font-size: 0.88rem;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1.85;
  margin: 0;
}
/* ===== DOCTORS ===== */
#doctors {
  background: var(--ivory-warm);
  padding: 6rem 0;
}
.doctors-header {
  text-align: center;
  margin-bottom: 4rem;
}
.doctors-header h2 {
  font-size: clamp(2.4rem, 4vw, 3.5rem);
  font-weight: 300;
}
.doctor-card {
  text-align: center;
}

.doctor-img-wrap {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 1.5rem;
  border: 3px solid var(--bronze-pale);
  transition: border-color var(--transition);
}
.doctor-card:hover .doctor-img-wrap {
  border-color: var(--bronze);
}
.doctor-img-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--bronze-pale), var(--ivory-warm));
  display: flex;
  align-items: center;
  justify-content: center;
}
.doctor-img-placeholder i {
  font-size: 3.5rem;
  color: var(--bronze-light);
  opacity: 0.7;
}
.doctor-card h4 {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 0.2rem;
}
.doctor-title {
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--bronze);
  margin-bottom: 0.85rem;
  display: block;
}
.doctor-card p {
  font-size: 0.88rem;
  color: var(--charcoal-mid);
  line-height: 1.8;
}

#payment-options {
  background: var(--ivory);
  padding: 6rem 0;
}
.payment-header {
  text-align: center;
  margin-bottom: 4rem;
}
.payment-header h2 {
  font-size: clamp(2.2rem, 3.5vw, 3.2rem);
  font-weight: 300;
}
.payment-header p {
  max-width: 520px;
  margin: 0 auto;
  font-size: 0.95rem;
  color: var(--charcoal-mid);
  line-height: 1.9;
}

.mt-100 {
  margin-top: 100px;
}
.service-card__number {
  display: flex;
  font-size: 12px;
  color: #b08a5a;
  font-family: "Cormorant Garamond";
}

.service-card__learn-more {
  display: flex;
  margin-top: 15px;
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  color: #b08a5a;
  transition: all 0.3s ease;
}

.service-card__learn-more:hover {
  color: #000;
  transform: translateX(4px);
}

.service-card {
  background: #fff;
  border: 1px solid #e8d5c0;
  min-height: 575px;
}

/* ===== TESTIMONIALS ===== */
#testimonials {
  background: var(--ivory);
  padding: 6rem 0;
}
.testimonials-header {
  text-align: center;
  margin-bottom: 4rem;
}
.testimonials-header h2 {
  font-size: clamp(2.4rem, 4vw, 3.5rem);
  font-weight: 300;
}
.testimonial-card {
  background: var(--white);
  border: 1px solid var(--bronze-pale);
  padding: 2.5rem 2rem;
  height: 100%;
  position: relative;
  transition:
    transform var(--transition),
    box-shadow var(--transition);
}
.testimonial-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-card);
}
.testimonial-quote {
  font-family: var(--ff-display);
  font-size: 3.5rem;
  line-height: 1;
  color: var(--bronze-pale);
  position: absolute;
  top: 1.25rem;
  left: 1.5rem;
}
.testimonial-text {
  font-family: var(--ff-display);
  font-size: 1.15rem;
  font-style: italic;
  color: var(--charcoal);
  line-height: 1.7;
  margin-bottom: 1.5rem;
  padding-top: 1.5rem;
  min-height: 190px;
}
.testimonial-stars {
  color: var(--bronze);
  margin-bottom: 0.75rem;
  font-size: 0.85rem;
}
.testimonial-author {
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--bronze);
  font-weight: 500;
}
.testimonial-location {
  font-size: 0.75rem;
  color: var(--charcoal-mid);
}
#doctors {
  background: var(--ivory-warm);
  padding: 6rem 0;
}

.doctors-header {
  text-align: center;
  margin-bottom: 4rem;
}

.doctors-intro {
  max-width: 460px;
  margin: 0 auto;
  color: var(--charcoal-mid);
  font-size: 0.92rem;
}

.doctor-card {
  text-align: center;
}

.doctor-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.doctor-img-wrap {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 1.5rem;
  border: 3px solid var(--bronze-pale);
  transition: border-color 0.3s ease;
}

.doctor-card:hover .doctor-img-wrap {
  border-color: var(--bronze);
}

.doctor-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.doctor-card-wrapper:nth-child(3) .doctor-img {
  object-position: 50% 20%;
}
.doctor-card h4 {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 0.2rem;
}

.doctor-title {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--bronze);
  margin-bottom: 0.85rem;
}

.doctor-card p {
  font-size: 0.88rem;
  color: var(--charcoal-mid);
  line-height: 1.8;
  max-width: 320px;
  margin: 0 auto;
}

#seo-intro {
  background: var(--ivory-warm);
  padding: 5rem 0;
}

.service-intro-image {
  width: 100%;
  border-radius: 20px;
  object-fit: cover;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.intro-text {
  font-family: var(--ff-display);
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  font-weight: 300;
  color: var(--charcoal);
  line-height: 1.55;
}

.intro-text strong {
  font-weight: 500;
  color: var(--bronze);
}

/* ===== SERVICES ===== */
#services {
  background: var(--ivory);
  padding: 6rem 0;
}
.services-header {
  text-align: center;
  margin-bottom: 4rem;
}
.services-header h2 {
  font-size: clamp(2.4rem, 4vw, 3.5rem);
  font-weight: 300;
}

.service-card {
  background: var(--white);
  border: 1px solid var(--bronze-pale);
  overflow: hidden;
  transition:
    transform var(--transition),
    box-shadow var(--transition);
  height: 100%;
}
.service-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-soft);
}
.service-card:focus-within {
  outline: 2px solid var(--bronze);
  outline-offset: 2px;
}
.service-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  background: var(--ivory-warm);
}
/* Placeholder image for service cards */
.img-placeholder {
  width: 100%;
  aspect-ratio: 4/3;
  background: linear-gradient(
    135deg,
    var(--ivory-warm) 0%,
    var(--bronze-pale) 100%
  );
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.5rem;
}
.img-placeholder i {
  font-size: 2.5rem;
  color: var(--bronze-light);
  opacity: 0.6;
}
.img-placeholder span {
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--bronze-light);
  opacity: 0.7;
}

.service-body {
  padding: 2rem 1.75rem 2rem;
}
.service-num {
  font-family: var(--ff-display);
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  color: var(--bronze-light);
  margin-bottom: 0.5rem;
  display: block;
}
.service-body h3 {
  font-size: 1.75rem;
  font-weight: 400;
  margin-bottom: 0.75rem;
}
.service-body p {
  font-size: 0.92rem;
  color: var(--charcoal-mid);
  line-height: 1.8;
  margin-bottom: 1.25rem;
}
.service-link {
  font-size: 0.72rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--bronze);
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  transition: gap var(--transition);
}
.service-link:hover {
  gap: 1rem;
  color: var(--charcoal);
}

.divider-line {
  width: 48px;
  height: 1px;
  background: var(--gold-line);
  margin: 1.25rem auto;
}
.divider-line-left {
  width: 48px;
  height: 1px;
  background: var(--gold-line);
  margin: 1.25rem 0;
}
.homepage-services {
  background: #f5efe7;
  padding: 100px 0;
}

.homepage-services__header {
  margin-bottom: 50px;
}

.homepage-services__label {
  display: block;
  margin-bottom: 15px;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #b2865b;
}

.homepage-services__title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 300;
  line-height: 1.1;
  margin-bottom: 0;
}

.homepage-services__intro {
  font-size: 14px;
  line-height: 1.9;
  color: #5f5f5f;
}

.homepage-services__card {
  background: #fff;
  border: 1px solid #e4d8cb;
  padding: 24px;
  display: flex;
  gap: 18px;
  height: 100%;
  transition: all 0.3s ease;
}

.homepage-services__card:hover {
  transform: translateY(-4px);
}

.homepage-services__icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border: 1px solid #d8c4b2;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.homepage-services__icon img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.homepage-services__content h3 {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 8px;
  color: #3f3a35;
}

.homepage-services__content p {
  margin-bottom: 14px;
  font-size: 13px;
  line-height: 1.8;
  color: #6d6d6d;
}

.homepage-services__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 11px;
  color: #b2865b;
  font-weight: 500;
}

.homepage-services__link:hover {
  color: #8c6540;
}

.homepage-services__footer {
  margin-top: 55px;
  padding-top: 35px;
  border-top: 1px solid #e4d8cb;
}

.homepage-services__footer-text {
  margin: 0;
  color: #555;
  font-size: 15px;
}

.homepage-services__footer-text em {
  color: #b2865b;
  font-style: italic;
}

.homepage-services__cta {
  display: inline-block;
  background: #a77446;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
  padding: 16px 34px;
  transition: 0.3s ease;
}

.homepage-services__cta:hover {
  color: #fff;
  background: #94653b;
}

@media (max-width: 991px) {
  .homepage-services {
    padding: 60px 0;
  }

  .homepage-services__title {
    margin-bottom: 20px;
  }

  .homepage-services__footer {
    text-align: center;
  }

  .homepage-services__cta {
    margin-top: 20px;
  }
}

/* ===== FADE-IN ANIMATION ===== */
.fade-up {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}
.fade-up-delay-1 {
  transition-delay: 0.1s;
}
.fade-up-delay-2 {
  transition-delay: 0.2s;
}
.fade-up-delay-3 {
  transition-delay: 0.3s;
}
.fade-up-delay-4 {
  transition-delay: 0.4s;
}

/* ===== WHY US STORY ===== */
#why-story {
  background: var(--ivory-warm);
  padding: 6rem 0;
}
.why-story-img {
  width: 100%;
  aspect-ratio: 4/5;
  background: linear-gradient(
    160deg,
    var(--bronze-pale) 0%,
    var(--ivory-warm) 100%
  );
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.why-story-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.why-story-img-ph {
  width: 100%;
  height: 100%;
  min-height: 420px;
  background: linear-gradient(
    160deg,
    var(--bronze-pale) 0%,
    var(--bronze-light) 100%
  );
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1rem;
}
.why-story-img-ph i {
  font-size: 4rem;
  color: rgba(255, 255, 255, 0.6);
}
.why-story-img-ph span {
  font-size: 0.65rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
}

.why-story-content {
  padding: 3rem 0;
}
.why-story-content h2 {
  font-size: clamp(2.2rem, 3.5vw, 3rem);
  font-weight: 300;
  margin-bottom: 1.5rem;
}
.why-story-content p {
  font-size: 0.97rem;
  color: var(--charcoal-mid);
  line-height: 1.9;
  margin-bottom: 1.25rem;
}
.stat-row {
  display: flex;
  gap: 2.5rem;
  margin: 2rem 0;
  flex-wrap: wrap;
}
.stat-item {
  flex-direction: column;
}
.stat-item strong {
  font-family: var(--ff-display);
  font-size: 2.8rem;
  font-weight: 300;
  color: var(--bronze);
  display: block;
  line-height: 1;
}
.stat-item span {
  font-size: 0.72rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--charcoal-mid);
}
/* ===== UTILITY ===== */
.btn-bronze {
  display: inline-block;
  background: var(--bronze);
  color: #fff !important;
  padding: 0.75rem 2rem;
  border-radius: 2px;
  font-family: var(--ff-body);
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: 2px solid var(--bronze);
  transition:
    background var(--transition),
    color var(--transition);
}
.btn-bronze:hover {
  background: transparent;
  color: var(--bronze) !important;
}
.btn-outline-bronze {
  display: inline-block;
  background: transparent;
  color: var(--bronze) !important;
  padding: 0.75rem 2rem;
  border-radius: 2px;
  font-family: var(--ff-body);
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: 2px solid var(--bronze);
  transition:
    background var(--transition),
    color var(--transition);
}
.btn-outline-bronze:hover {
  background: var(--bronze);
  color: #fff !important;
}
.btn-ivory {
  display: inline-block;
  background: var(--ivory);
  color: var(--bronze) !important;
  padding: 0.75rem 2rem;
  border-radius: 2px;
  font-family: var(--ff-body);
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: 2px solid var(--ivory);
  transition:
    background var(--transition),
    color var(--transition);
}
.btn-ivory:hover {
  background: var(--bronze);
  color: #fff !important;
  border-color: var(--bronze);
}

/* ===== FINANCING ===== */
#financing {
  background: var(--white);
  padding: 6rem 0;
}
.financing-img {
  width: 100%;
  min-height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1rem;
}
.financing-img i {
  font-size: 4rem;
  color: rgba(196, 150, 114, 0.6);
}
.financing-img span {
  font-size: 0.65rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(196, 150, 114, 0.6);
}

.financing-content {
  padding: 2rem 0 2rem 3rem;
}
.financing-content h2 {
  font-size: clamp(2rem, 3.5vw, 2.8rem);
  font-weight: 300;
  margin-bottom: 1.25rem;
}
.financing-content p {
  font-size: 0.95rem;
  color: var(--charcoal-mid);
  line-height: 1.9;
  margin-bottom: 2rem;
}
.finance-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
}

.quick-link-icon {
  width: 50px;
  height: 50px;
  object-fit: contain;
  display: block;
  margin: 0 auto 0.75rem;
  transition: transform var(--transition);
}

.quick-link-item:hover .quick-link-icon {
  transform: translateY(-3px);
}

/* ===== SHORT LINKS ===== */
#quick-links {
  background: var(--bronze);
  padding: 4rem 0;
}
.quick-links-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.quick-link-item {
  padding: 2.5rem 2rem;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, 0.15);
  transition: background var(--transition);
  text-decoration: none;
  display: block;
}
.quick-link-item:last-child {
  border-right: none;
}
.quick-link-item:hover {
  background: rgba(0, 0, 0, 0.1);
}
.quick-link-item:focus {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: -2px;
}
.quick-link-item i {
  font-size: 1.8rem;
  color: rgba(255, 255, 255, 0.7);
  display: block;
  margin-bottom: 0.75rem;
  transition:
    color var(--transition),
    transform var(--transition);
}
.finance-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.finance-logo-badge img {
  max-width: 100%;
  max-height: 50px; /* controls logo size */
  width: auto;
  height: auto;
  object-fit: contain;
}
.quick-link-item:hover i {
  color: #fff;
  transform: translateY(-3px);
}
.quick-link-item h5 {
  font-family: var(--ff-display);
  font-size: 1.2rem;
  font-weight: 400;
  color: #fff;
  margin-bottom: 0.25rem;
}
.quick-link-item p {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
  letter-spacing: 0.05em;
}
/* ===== SOCIAL ===== */
#social {
  background: var(--charcoal);
  padding: 4rem 0;
  text-align: center;
}
#social h3 {
  font-family: var(--ff-display);
  font-size: 1.8rem;
  font-weight: 300;
  color: #fff;
  margin-bottom: 0.5rem;
}
#social p {
  font-size: 0.82rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  margin-bottom: 2rem;
}
.social-links {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}
.social-link {
  width: 52px;
  height: 52px;
  border: 1px solid rgba(196, 150, 114, 0.35);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bronze-light);
  font-size: 1.1rem;
  transition:
    background var(--transition),
    border-color var(--transition),
    color var(--transition),
    transform var(--transition);
}
.social-link:hover {
  background: var(--bronze);
  border-color: var(--bronze);
  color: #fff;
  transform: translateY(-3px);
}

@media (max-width: 771px) {
  .custom-hero-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0px;
  }
  .custom-hero-right,
  .custom-hero-grid {
    display: flex;
    align-items: center;
  }
  .custom-hero-right,
  .custom-hero-left {
    width: 90%;
  }
  .hero-content {
    margin-left: 25px;
  }
}
@media (max-width: 571px) {
  #hero {
    min-height: 0;
  }
  .quick-links-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}
.financing-img img {
  width: 100%;
  height: auto;
  display: block;
}
.meet-dentist-item {
  display: grid;
  grid-template-columns: 320px 1fr;
  background: #ffffff;
   border: 1px solid #E8D5C0;
  margin-bottom: 40px;
  align-items: center;
  margin-top: 40px;
  gap: 40px;
}

.meet-dentist-item__img img {
  width: 100%;
  display: block;
  background: linear-gradient(169deg, #f2eae0 0%, #e8d5c0 100%);
}

.meet-dentist-item_content {
  align-self: center;
}
.row > div:nth-child(3) .doctor-img {
  object-position: 50% 37%;
}
.row > div:nth-child(1) .doctor-img {
  object-position: center 28%;
  transform: scale(0.99);
}
.row > div:nth-child(2) .doctor-img{
  object-position: center 41%;
  transform: scale(0.99);
}
@media (max-width: 767px) {
  .meet-dentist-item {
    display: flex;
    flex-direction: column;
  }

  #hero {
    display: block;
    padding-top: 0;
    min-height: auto;
  }

  .hero-bg-img {
    position: relative;
    height: 350px; /* adjust as needed */
  }

  .hero-bg-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .hero-content {
    padding: 40px 25px;
  }

  .hero-bg-img::after {
    display: none;
  }
  .why-story-content {
    text-align: center;
    padding: 0px 2rem;
  }
  .divider-line-left {
    margin: 1.25rem auto;
  }
  .stat-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .financing-content {
    padding: 2rem 2rem 2rem 2rem;
  }
  .footer .hour-row .time {
    flex: none;
  }
  .footer .hour-row .day {
    min-width: 30px;
  }
  .footer .hours {
    align-items: center;
  }
}

.contact-info-box p {
  color: #c49a72;
}
.service-card {
  min-height: 600px;
}
.service-card__desc {
  min-height: 197px;
}

/* Google review section */
.google-reviews-section {
  
}

.google-reviews-section .reviews-box {
    display: flex;
    align-items: center;
    gap: 40px;
}

.google-reviews-section .reviews-left {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-right: 40px;
    border-right: 1px solid #000;
    flex-shrink: 0;
}

.google-reviews-section .google-logo {
    width: 150px;
    height: auto;
    display: block;
}

.google-reviews-section .google-rating {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.google-reviews-section .google-stars {
    width: 115px;
    height: auto;
    display: block;
}

.google-reviews-section .google-rating span {
    font-size: 16px;
    line-height: 1;
    margin-top: 8px;
    margin-left: 13px;
}



.google-reviews-section .reviews-content h2 {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
}

.google-reviews-section .reviews-buttons {
    display: flex;
    gap: 24px;
    margin-left: auto;
}

.google-reviews-section .reviews-buttons .btn {
    min-width: 230px;
    text-align: center;
}

@media (max-width: 991px) {

    .google-reviews-section .reviews-box {
        flex-direction: column;
        text-align: center;
    }

    .google-reviews-section .reviews-left {
        border-right: none;
        border-bottom: 1px solid #000;
        padding-right: 0;
        padding-bottom: 20px;
    }

    .google-reviews-section .google-rating {
        align-items: center;
    }

    .google-reviews-section .reviews-content {
        max-width: 100%;
    }

    .google-reviews-section .reviews-buttons {
        margin-left: 0;
        justify-content: center;
        flex-wrap: wrap;
    }
}

