/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Description: Child theme for Twenty Twenty-Five
Author: Your Name
Template: twentytwentyfive
Version: 1.0
Text Domain: twentytwentyfive-child
*/

body {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

a {
  text-decoration: none;
}

button:focus,
button:a {
  outline: none;
  box-shadow: none;
}

.form-control:focus {
  outline: none;
  box-shadow: none;
}

ul {
  padding: 0;
}

body {
  overflow-x: hidden;
  max-width: 100%;
}

html {
  scroll-behavior: smooth;
}

.cmn-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  padding: 13px 30px;
  font-size: 15px;
  font-weight: 500;
  border: 1px solid #28375F;
  background-color: #28375F;
  border-radius: 5px;
  transition: all 0.4s;
  cursor: pointer;
}

.cmn-btn:hover {
  background-color: #fff;
  color: #28375F;
}

.cmn-btn i {
  font-size: 19px;
}

.heading {
  margin-bottom: 30px;
}

.heading h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  line-height: 49px;
  font-size: 44px;
  text-transform: capitalize;
}

.heading h2 span {
  color: #2F3293;
  background: linear-gradient(90deg, #123d70, #2f3293cc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.heading h4 {
  margin-bottom: 10px;
  color: #555;
  font-size: 16px;
  font-weight: 500;
}

.heading h4 span {
  padding-left: 22px;
  background-image: url("./images/heading-icon.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 15px;
}

.heading p {
  font-size: 16px;
  letter-spacing: 0.5px;
  font-weight: 500;
  margin: 0;
}

li {
  list-style: none;
}

.custom-ul {
  padding: 0;
}

.custom-ul li {
  position: relative;
  padding: 0 0 0 30px;
  margin-bottom: 10px;
  color: #08083b;
  font-size: 16px;
  font-weight: 500;
}

.custom-ul li::before {
  content: "\f058";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 1px;
  color: #263850;
}


/* ========== Header ========== */


.loction-strip {
  background-color: #18283c;
  padding: 15px 0;
}

.loction-strip-inr ul {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}

.loction-strip-inr ul li a {
  color: #fff;
  font-size: 12px;
}

.loction-strip-inr ul li {
  padding: 0 15px;
  display: inline-block;
  position: relative;
}

.loction-strip-inr ul li:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5px;
  height: 15px;
  background: #fff;
  opacity: 1;
  transition: 0.3s;
}

.loction-strip-inr ul li:hover::after {
  height: 20px;
}


.top-strip {
  background-color: #253850;
  padding: 13px 0;
}

.top-strip-inr {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.top-strip-inr .header-info {
  width: 100%;
  gap: 24px;
}

.top-strip-group {
  display: flex;
  align-items: center;
  gap: 45px;
}

.top-strip-group .info-box-right {
  position: relative;
}

.top-strip-group .info-box-right::before {
  content: "";
  position: absolute;
  left: -24px;
  top: 50%;
  width: 1px;
  height: 24px;
  background-color: rgba(255, 255, 255, 0.45);
  transform: translateY(-50%);
}

.top-strip-inr .info-box {
  display: flex;
  align-items: center;
  gap: 9px;
}

.top-strip-inr .info-box img {
  width: 22px;
  transition: all 0.3s;
}

.info-bx-inr {
  display: flex;
  gap: 5px;
  align-items: center;
}

.top-strip-inr .info-box p a {
  color: #fff;
  position: relative;
  transition: all 0.3s;
}

.top-strip-inr .info-box p a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background-color: #fff;
  opacity: 0;
  transition: all 0.3s
}

.top-strip-inr .info-box p a:hover::after {
  opacity: 1;
}

.info-box:has(a:hover) img {
  transform: scale(1.06);
}

.top-strip-inr .info-box p {
  color: #fff;
  margin-bottom: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.top-strip-inr .info-box span {
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.top-strip-appointment {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px 15px;
  color: #253850;
  border: 1px solid #fff;
  background-color: #fff;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.3s;
}

.top-strip-appointment:hover {
  background-color: transparent;
  color: #fff;
}

.top-strip-appointment:hover img {
  filter: brightness(0) invert(1);
}

.top-strip-appointment img {
  width: 19px;
  transition: all 0.3s;
}

.header {
  background-color: #fff;
  position: sticky;
  top: 0;
  z-index: 999;
}

.header-area {
  padding: 10px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0px 1px 0px #25385029;
}

.logo-area img {
  width: 110px;
}

.header-inr {
  justify-content: flex-end !important;
}

.head-menu {
  max-width: 100%;
}

.head-menu ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0;
}

.head-menu .nav-item a {
  display: inline-block;
  padding: 9px 17px;
  color: #403e3e;
  font-weight: 600;
  transition: all 0.3s;
  position: relative;
  font-size: 14px;
  white-space: nowrap;
  background-color: transparent;
}

.head-menu>ul>.nav-item>a:hover,
.head-menu>ul>.nav-item>a.active {
  color: #253850;
}

.head-menu>ul>.nav-item>a::before {
  content: "";
  position: absolute;
  border: none;
  left: 50%;
  bottom: 2px;
  width: 60%;
  height: 1px;
  background-color: #253850;
  border-radius: 10px;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
}

.head-menu>ul>.nav-item>a:hover::before,
.head-menu>ul>.nav-item>a.active::before {
  transform: translateX(-50%) scaleX(1);
}

.head-menu>ul>.nav-item.dropdown>a::after {
  display: none !important;
}

.head-menu .nav-item.dropdown .dropdown-menu .dropdown-item {
  color: #253850;
  position: relative;
  transition: 0.3s;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.head-menu .nav-item.dropdown .dropdown-item::before {
  content: "\f06e";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 10px;
  top: 50%;
  width: auto;
  height: auto;
  border: 0;
  color: rgba(37, 56, 80, 0.68);
  font-size: 11px;
  line-height: 1;
  transform: translateY(-50%);
  opacity: 1;
  transition: 0.3s;
}

.head-menu .nav-item.dropdown .dropdown-item:hover {
  color: #123d70;
  padding-left: 38px;
}

.head-menu .nav-item.dropdown .dropdown-item:hover::before {
  left: 14px;
  color: #123d70;
}

.menu-humburger button {
  background-color: transparent;
  border: none;
  padding: 0;
  color: #253850;
  font-size: 18px;
  text-transform: uppercase;
}

.menu-humburger button i {
  font-size: 26px;
  margin-right: 10px;
  width: 20px;
}

.humburgerbtn.humbtnopen .fa-solid.fa-bars {
  display: none;
}

.head-menu .nav-item.dropdown .dropdown-menu {
  display: none;
  position: absolute;
  left: -10%;
  background-color: #fff;
  padding: 18px 18px 22px;
  border-radius: 0 0 15px 15px;
  border: none;
  min-width: 270px;
  width: max-content;
  z-index: 999;
  box-shadow: 0 8px 18px #0a254014, 0 2px 6px #0a25400f;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(12px);
  transition: all 0.3s ease;
  pointer-events: none;
}

.head-menu .nav-item.dropdown .grouped-dropdown {
  left: -100%;
}

.grouped-dropdown {
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  width: min(86vw, 640px);
  min-width: 620px !important;
  gap: 0;
  padding: 25px 15px !important;
  overflow: hidden !important;
}

.grouped-dropdown .dropdown-service-group {
  padding: 5px 18px;
}

.grouped-dropdown .dropdown-service-group:not(:first-child) {
  border-left: 1px solid #25385054;
}

.grouped-dropdown .dropdown-group-title {
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  padding: 10px 12px;
  color: #253850;
  background: linear-gradient(135deg, #25385021, #2538500a);
  border-radius: 5px;
  box-shadow: inset 0 1px 0 #ffffffad;
  backdrop-filter: blur(8px);
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.head-menu .nav-item.dropdown .dropdown-item {
  display: block;
  padding: 9px 10px 9px 30px;
  border-radius: 8px;
  font-size: 13px;
  line-height: 19px;
  white-space: normal;
}

.head-menu .nav-item.dropdown .dropdown-item::before {
  left: 9px;
}

.head-menu .nav-item.dropdown .dropdown-item:hover,
.head-menu .nav-item.dropdown .dropdown-item.active {
  padding-left: 34px;
  background-color: #f3f7fb;
}

.head-menu .nav-item.dropdown .dropdown-item:hover::before {
  left: 13px;
}

.head-menu .nav-item.dropdown:hover .dropdown-menu {
  display: block;
  transition: all 0.4s ease;
  pointer-events: all;
}

.head-menu .nav-item.dropdown:hover .grouped-dropdown {
  display: grid !important;
  align-items: flex-start;
}

.head-menu .nav-item.dropdown.show .dropdown-menu {
  display: block;
  max-height: 65rem;
  opacity: 1;
  transform: translateY(8px);
}

.head-menu .nav-item.dropdown.show .grouped-dropdown {
  display: grid !important;
}

.head-menu .nav-item.dropdown .about-dropdown-menu {
  left: -60px !important;
}

.mob-cnt-btn {
  display: flex;
  align-items: center;
  gap: 30px;
  margin: 15px 20px 0;
}

.mid-line {
  width: 1px;
  height: 40px;
  background: #253850;
}

.mob-cnt-btn span {
  font-size: 13px;
}

.mob-cnt-btn p {
  margin: 0;
}

.mob-cnt-btn p a {
  color: #253850;
  font-size: 15px;
  font-weight: 600;
}

.mob-cnt-btn i {
  color: #253850;
  font-size: 18px;
  padding-left: 3px;
}

.mob-cnt-btn .info-bx-inr {
  display: block;
}

/* ========== Header End ========== */

/* ========== Banner Start ========== */
.banner-inr {
  position: relative;
  margin-top: 20px;
  border-radius: 20px;
  overflow: hidden;
}

.banner-cnt {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.banner-cnt .heading h2 {
  line-height: 55px;
  font-size: 50px;
  margin-bottom: 20px;
}

.banner-cnt .heading h3 {
    font-size: 19px;
    font-weight: 600;
    color: #2e3191 !important;
}

.banner-badge {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 8px 20px 8px 8px;
  margin-bottom: 26px;
  color: #1c5fc1;
  background: #ffffffad;
  border: 1px solid #ffffffdb;
  border-radius: 50px;
  box-shadow: 0 12px 28px #2058a01f;
  backdrop-filter: blur(10px);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
}

.banner-badge i {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, #2a6fd2, #174c9d);
  border-radius: 50%;
  font-size: 16px;
  flex: 0 0 auto;
}

.banner-carousel .owl-nav {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 34px;
  transform: translateY(-50%);
  pointer-events: none;
}

.banner-carousel .owl-nav button.owl-prev,
.banner-carousel .owl-nav button.owl-next {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #123d70 !important;
  background: rgba(255, 255, 255, 0.78) !important;
  border: 1px solid rgba(18, 61, 112, 0.14) !important;
  border-radius: 50% !important;
  box-shadow: 0 10px 24px rgba(18, 61, 112, 0.14);
  backdrop-filter: blur(10px);
  transition: 0.3s ease;
  pointer-events: auto;
}

.banner-carousel .owl-nav button.owl-prev:hover,
.banner-carousel .owl-nav button.owl-next:hover {
  color: #fff !important;
  background: #123d70 !important;
  border-color: #123d70 !important;
  transform: translateY(-2px);
}


/* ========== Banner End ========== */


/* ========== Counter Area ========== */

.counter-sec {
  position: relative;
  z-index: 9;
  margin-top: -70px;
}

.counter-shape {
  position: relative;
  background-image: url("./images/counter-bg-shape.svg");
  background-repeat: no-repeat;
  background-position: 50% 70%;
  background-size: 100%;
  padding: 35px 40px;
  border-bottom: 1px solid #eee;
  border-radius: 20px;
}

.first-counter-bx {
  padding-left: 40px;
}

.counter-bx {
  position: relative;
  display: flex;
  align-items: center;
  gap: 15px;
}

.counter-bx::after {
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  width: 1px;
  height: 90px;
  background: #d9dee5;
  transform: translateY(-50%);
}

.last-counter-bx::after {
  display: none;
}

.counter-icon {
  width: 75px;
  height: 75px;
  min-width: 75px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #edf4ff;
  color: #123d70;
  font-size: 29px;
}

.count-up-inr {
  display: flex;
  align-items: center;
  gap: 2px;
}

.count-up-inr h2,
.count-up-inr span {
  margin: 0;
  color: #123d70;
  font-size: 37px;
  line-height: 1;
  font-weight: 700;
}

.counter-cnt p {
  margin: 0;
  color: #273442;
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
}



/* ========== Counter Area End ========== */


/* ========== Appointment Request ========== */

.appointment-request-sec {
  padding: 60px 0
}

.appointment-visual {
  position: relative;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  background-color: #eef4fb;
}

.appointment-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #44404057;
  pointer-events: none;
}

.call-back-bx {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  width: 320px;
  padding: 20px 20px 0 0;
  background: #fff;
  border-radius: 22px 25px 0 0;
}

.call-back-bx::before {
  content: "";
  position: absolute;
  left: 0;
  top: -24px;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 0 24px;
  box-shadow: -10px 10px 0 10px #fff;
}

.call-back-bx::after {
  content: "";
  position: absolute;
  right: -24px;
  bottom: 0;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 0 24px;
  box-shadow: -10px 10px 0 10px #fff;
}

.call-back-card {
  position: relative;
  background-color: #2f3293;
  padding: 30px;
  border-radius: 18px 22px 22px 18px;
  z-index: 2;
}

.call-back-card h3 {
  margin: 0 0 15px;
  color: #fff;
  font-size: 24px;
  font-weight: 600;
}

.call-now-btn.cmn-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 7px 26px 7px 8px;
  color: #403e3e;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 700;
}

.call-now-btn.cmn-btn:hover {
  background-color: transparent;
  color: #fff;
}

.call-now-btn.cmn-btn:hover span {
  color: #fff;
  border: 1px solid #fff;
}

.call-now-btn span {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #253850;
  border: 1px solid #253850;
  border-radius: 50%;
  font-size: 18px;
  transition: all 0.3s;
}

.call-now-btn span i {
  padding: 0;
  font-size: 18px;
}

.form-area {
  background: #2a405c;
  border-radius: 25px;
  padding: 45px;
}

.form-area .heading h2 {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 700;
}

.form-area .row {
  row-gap: 15px;
}

.form-area .form-control {
  padding: 17px 20px;
  background: transparent;
  color: #fff;
  border: 1px solid #ffffffe6;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 400;
  box-shadow: none;
  outline: none;
  transition: all 0.3s ease;
}

.form-area .form-control::placeholder {
  color: #fff;
  opacity: 0.95;
}

.form-area .form-select {
  padding: 17px 20px;
  background: transparent;
  color: #fff;
  border: 1px solid #ffffffe6;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 400;
  box-shadow: none;
  outline: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right .75rem center;
  background-size: 16px 12px;
  transition: all 0.3s ease;
}

.form-area .form-select option {
  background: #2a405c;
  color: #fff;
}

.form-area .form-control:focus,
.form-area .form-select:focus {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.08);
}

.form-area .form-btn {
  text-align: left !important;
}

.form-area .cmn-btn {
  background-color: #fff;
  border: 1px solid #fff;
  color: #222;
  padding: 16px 35px;
  font-size: 17px;
  border-radius: 15px;
  font-weight: 600;
  margin: 10px 0 0;
}

.form-area .btn-submit:hover {
  background-color: transparent;
  color: #fff;
}

/* ========== Appointment Request End ========== */


/* ========== Welcome Area ========== */

.welcome-sec {
  padding: 10px 0 50px;
}

.section-sub-title {
  margin: 0;
}

.section-sub-title span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 30px;
  color: #555;
  font-size: 18px;
  font-weight: 400;
}

.technology-bx {
  padding: 30px;
  background: #293e59;
  border-radius: 25px;
}

.technology-img img {
  height: 290px;
  object-fit: cover;
  border-radius: 20px;
}

.technology-cnt h3 {
  margin: 0 0 15px;
  color: #fff;
  font-size: 25px;
  font-weight: 600;
}

.technology-cnt p {
  margin: 0 0 25px;
  color: #fff;
  font-size: 17px;
  font-weight: 400;
}

.technology-cnt .cmn-btn {
  color: #293e59;
  background-color: #fff;
  border-color: #fff;
  border-radius: 50px;
  font-size: 16px;
  font-weight: 500;
}

.technology-cnt .cmn-btn:hover {
  color: #fff;
  background-color: transparent;
}

/* ========== Welcome Area End ========== */


/* ========== Services Area ========== */

.services-sec {
  padding: 30px 0 80px;
}

.services-wrap {
  padding: 55px 34px 50px;
  background: linear-gradient(125deg, #30339a 0%, #293e59 78%);
  border-radius: 24px;
}

.services-sec .heading h4 {
  color: #fff;
  text-align: center;
}

.services-sec .heading h2 {
  color: #fff;
  text-align: center;
}

.services-grid {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.services-row {
  display: flex;
  gap: 40px;
  align-items: stretch;
}

.service-card {
  position: relative;
  flex: 1 1 0;
  min-height: 290px;
  height: 290px;
  display: flex;
  align-items: center;
  padding: 18px;
  background-color: #f4f4f4;
  border-radius: 26px;
  overflow: hidden;
  transition: all 0.3s;
}

.service-card.is-open,
.services-carousel:not(.services-ready) .service-card.default-open {
  flex-grow: 2;
  gap: 20px;
  padding: 25px 25px 25px 30px;
}

.service-card .service-cnt,
.services-carousel.services-ready .service-card.default-open:not(.is-open) .service-cnt {
  position: absolute;
  left: 18px;
  top: 18px;
  max-width: calc(100% - 40px);
  padding: 8px 12px 10px 15px;
  background: #f4f4f4f5;
  border-radius: 0 0 13px 0;
  z-index: 2;
}

.service-card.is-open .service-cnt,
.services-carousel:not(.services-ready) .service-card.default-open .service-cnt {
  position: relative;
  left: auto;
  top: auto;
  width: 48%;
  flex: 0 0 48%;
  max-width: none;
  padding: 0;
  background-color: transparent;
  border-radius: 0;
  transform: translateX(0);
}

.service-cnt h3 {
  margin: 0;
  color: #111;
  font-size: 16px;
  line-height: 1.12;
  font-weight: 700;
}

.service-card.is-open .service-cnt h3,
.services-carousel:not(.services-ready) .service-card.default-open .service-cnt h3 {
  margin-bottom: 20px;
  font-size: 21px;
}

.service-cnt p {
  position: absolute;
  margin: 0;
  color: #4d4d4d;
  font-size: 15px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(12px);
}

.service-card.is-open .service-cnt p,
.services-carousel:not(.services-ready) .service-card.default-open .service-cnt p {
  position: static;
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.service-img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  transition: all 0.3s;
}

.service-img img {
  width: 100%;
  height: 100%;
  min-height: 215px;
  object-fit: cover;
  transition: none;
}

.services-carousel .owl-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 30px 0 20px;
}

.services-carousel .owl-dots .owl-dot {
  background: #d1d1d1;
  height: 3px;
  width: 13px;
  border-radius: 3px;
  margin: 0 4px;
}

.services-carousel .owl-dots .owl-dot.active {
  background: #fff;
  height: 13px;
}


/* ========== Services Area End ========== */


/* ========== Years Of Service ========== */

.Yearse-of-exprince {
  padding-bottom: 60px;
}

.Yearse-of-exprince .heading h3 {
  font-weight: 700;
  line-height: 36px;
  font-size: 32px;
  color: #2E2E2F;
  text-transform: capitalize;
}

.Yearse-of-exprince .call-back-card {
  padding: 30px 20px;
}

.Yearse-of-exprince .call-back-card p {
  color: #fff;
  margin: 0;
}

.exprince-bx {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.exprince-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.exprince-card {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 30px 20px;
    color: #fff;
    background-color: #28375F;
    border-radius: 15px;
    cursor: pointer;
    max-height: 180px;
    overflow: hidden;
    transition: background-color 0.25s ease, padding 0.3s ease, grid-column 0.3s ease;
}

.exprince-card:hover,
.exprince-card:focus-within,
.exprince-card.is-open {
  background-color: #2F3293;
  outline: none;
  grid-column: 1 / -1;
  padding: 38px 32px;
}

.exprince-card-feature {
  padding: 30px 20px;
  background-color: #2F3293;
}

.exprince-icon {
  color: #fff;
  font-size: 26px;
  transition: font-size 0.25s ease;
}

.exprince-card-feature .exprince-icon,
.exprince-card:hover .exprince-icon,
.exprince-card:focus-within .exprince-icon,
.exprince-card.is-open .exprince-icon {
  font-size: 34px;
  line-height: 1.2;
}

.exprince-card-cnt h3 {
  margin: 0;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  line-height: 31px;
  text-transform: capitalize;
  transition: font-size 0.25s ease;
}

.exprince-card:hover .exprince-card-cnt h3,
.exprince-card:focus-within .exprince-card-cnt h3,
.exprince-card.is-open .exprince-card-cnt h3 {
  font-size: 23px;
  line-height: 1.3;
}

.exprince-card-cnt p {
  margin: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-transform: capitalize;
  transition: max-height 0.3s ease, opacity 0.25s ease, margin-top 0.3s ease;
}

.exprince-card:hover .exprince-card-cnt p,
.exprince-card:focus-within .exprince-card-cnt p,
.exprince-card.is-open .exprince-card-cnt p {
  max-height: 400px;
  opacity: 1;
  margin-top: 12px;
  font-size: 16.5px;
  max-width: 520px;
}

/* ========== Years Of Service End ========== */


/* ========== Doctors Area ========== */

.doctors-sec {
  padding: 60px 0;
  background-color: #f4f4f4;
}

.doctors-head,
.branch-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.doctors-head .heading {
  max-width: 820px;
}

.doctors-carousel .owl-nav {
  display: flex !important;
  align-items: center;
  gap: 10px;
  position: absolute;
  top: -100px;
  right: 0;
}

.doctors-carousel .owl-nav button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #28375F !important;
  color: #fff !important;
  background-color: #28375F !important;
  border-radius: 50%;
  font-size: 18px !important;
  transition: all 0.3s;
}

.doctors-carousel .owl-nav button:hover {
  background-color: #fff !important;
  color: #28375F !important;
}

.doctors-carousel {
  margin-top: 20px;
}

.doctors-carousel-single {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
}

.doctors-carousel-single .item {
  width: calc(25% - 15px);
}

@media (max-width: 991px) {
  .doctors-carousel-single .item {
    width: calc(50% - 10px);
  }
}

@media (max-width: 767px) {
  .doctors-carousel-single .item {
    width: 100%;
  }
}

.doctor-card {
  height: 100%;
  overflow: hidden;
  background-color: #fff;
  border-radius: 10px;
  padding: 10px;
}

.doctor-card:hover .doctor-img img {
  transform: scale(1.05);
}

.doctor-img {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}

.doctor-img img {
  width: 100%;
  height: 245px;
  object-fit: cover;
  object-position: center top;
  transition: all 0.3s;
}

.doctor-profile-link {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: inline-flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: 120px;
  padding: 10px 0 0 10px;
  color: #fff;
  background-color: #fff;
  border-radius: 20px 0 8px 0;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.1;
  text-align: center;
  transition: all 0.3s;
}

.doctor-profile-link::before {
  content: "";
  position: absolute;
  left: -24px;
  bottom: 0;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 24px 0;
  box-shadow: 10px 10px 0 10px #fff;
}

.doctor-profile-link::after {
  content: "";
  position: absolute;
  right: 0;
  top: -24px;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 24px 0;
  box-shadow: 10px 10px 0 10px #fff;
}

.doctor-profile-card {
  position: relative;
  z-index: 2;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  background-color: #06013d;
  border-radius: 20px 0 8px 0;
  padding: 5px 10px 10px;
  transition: all 0.3s;
}

.doctor-profile-card i {
  margin: 5px 0;
  font-size: 17px;
}

.doctor-profile-link:hover {
  color: #fff;
}

.doctor-profile-link:hover .doctor-profile-card {
  background-color: #28308b;
}

.doctor-cnt {
  padding: 25px 8px 10px;
  text-align: center;
}

.doctor-cnt h3 {
  margin: 0 0 10px;
  color: #555;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
}

.doctor-cnt p {
  margin: 0;
  color: #08083b;
  font-size: 14px;
  font-weight: 400;
}

.mob-row .owl-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px 0;
}

.mob-row .owl-dots .owl-dot {
  background: #28308b;
  height: 3px;
  width: 13px;
  border-radius: 3px;
  margin: 0 4px;
}

.mob-row .owl-dots .owl-dot.active {
  background: #28308b;
  height: 13px;
}


/* ========== Doctors Area End ========== */


/* ========== Branch Area ========== */

.branch-sec {
  padding: 60px 0;
  background-color: #fff;
}

.branch-map-card {
  position: relative;
  overflow: hidden;
  background-color: #eef1f4;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(40, 55, 95, 0.09);
}

.branch-map-panel {
  display: none;
  position: relative;
  height: 100%;
}

.branch-map-panel.is-active {
  display: block;
}

.branch-map-frame {
  display: block;
  width: 100%;
  height: 580px;
  border: 0;
  filter: saturate(0.8);
}

.branch-map-btn {
  position: absolute;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
}

.branch-view-btn .cmn-btn {
  border-radius: 35px;
}

.branch-nav {
  justify-content: flex-end;
  margin: 0 0 30px;
}

.branch-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.branch-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-color: #fff;
  border: 1px solid rgba(40, 55, 95, 0.12);
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(16, 32, 60, 0.09);
  cursor: pointer;
  transition: all 0.3s;
}

.branch-card:hover,
.branch-card.is-active {
  border-color: rgba(47, 50, 147, 0.6);
  box-shadow: 0 20px 42px rgba(47, 50, 147, 0.14);
  transform: translateY(-3px);
}

.branch-label {
  position: absolute;
  left: 20px;
  top: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 7px 20px;
  color: #fff;
  background-color: #2F3293;
  border-radius: 20px;
  font-size: 14px;
  font-weight:500;
}

.branch-img img {
  width: 100%;
  height: 230px;
  object-fit: cover;
  border-radius: 18px 18px 8px 8px;
}

.branch-info {
  padding: 16px 18px 12px;
}

.branch-info p {
  margin: 0;
  color: #08083b;
  font-size: 13px;
  line-height: 22px;
  font-weight: 500;
}

.branch-info p:first-child {
  border-bottom: 1px solid rgba(8, 8, 59, 0.35);
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.branch-info span {
  color: #2F3293;
}

.branch-phone {
  margin-top: auto;
  padding: 10px 14px;
  background-color: #28375F;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}

.branch-phone a {
  color: #fff;
}

/* ========== Branch Area End ========== */


/* ========== Awards Recognition Area ========== */

.awards-recognition-sec {
  background: linear-gradient(105deg, #30379d 0%, #2b3a87 48%, #233762 100%);
  padding: 60px 0;
  margin-bottom: 90px;
  max-height: 530px;
}

.awards-recognition-sec .heading h2 {
  color: #fff;
  margin-bottom: 25px;
}

.awards-recognition-sec .heading p {
  color: #fff;
  margin-bottom: 25px;
}

.awards-know-btn {
  border-radius: 30px;
  background-color: #fff;
  color: #333;
  gap: 8px;
}

.awards-know-btn i {
  padding: 0;
  font-size: 17px;
  transform: rotate(-35deg);
}

.awards-know-btn:hover {
  background-color: #9390b3;
  color: #fff;
}

.awards-recognition-media {
  position: relative;
  width: 100%;
  max-width: 650px;
  margin-left: auto;
  margin-bottom: -105px;
}

.awards-img img {
  max-width: 500px;
  height: 500px;
  object-fit: cover;
  object-position: top;
  border-radius: 25px;
  margin-bottom: 80px;
}

.awards-slide-card {
  text-align: center;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 64%;
  padding: 38px 42px;
  border-radius: 24px;
  background-color: #9390b3;
  color: #fff;
  z-index: 9;
}

.awards-slide-card h3 {
  font-size: 27px;
  line-height: 1.1;
  font-weight: 700;
  color: #fff;
  margin: 0 0 10px;
}

.awards-slide-card p {
  font-size: 16px;
  line-height: 1.5;
  color: #fff;
  margin: 0 0 15px;
}

.awards-slide-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 160px;
  min-height: 48px;
  padding: 10px 20px;
  border: 1px solid #fff;
  border-radius: 30px;
  color: #fff;
  font-size: 18px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.awards-slide-card a:hover {
  background-color: #fff;
  color: #9390b3;
}

.awards-slider .owl-nav {
  margin: 0;
}

.awards-slider .owl-nav button.owl-prev,
.awards-slider .owl-nav button.owl-next {
  position: absolute;
  top: 70%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border: 1px solid #fff !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #fff !important;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  transition: all 0.3s ease;
  z-index: 10;
}

.awards-slider .owl-nav button.owl-prev {
  left: 27%;
}

.awards-slider .owl-nav button.owl-next {
  right: -10%;
}

.awards-slider .owl-nav button i {
  font-size: 14px;
}

.awards-slider .owl-nav button.owl-prev:hover,
.awards-slider .owl-nav button.owl-next:hover {
  background-color: #fff !important;
  color: #30379d !important;
}

.awards-slider .owl-dots {
  position: absolute;
  left: 12%;
  bottom: 115px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.awards-slider .owl-dot span {
  display: none !important;
}

.awards-slider .owl-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1px solid #fff !important;
  background: transparent !important;
  margin: 0 !important;
}

.awards-slider .owl-dot.active {
  background-color: #fff !important;
}

/* ========== Awards Recognition Area End ========== */


/* ========== Patient Review Area ========== */

.patient-review-sec {
  padding: 60px 0;
}

.patient-review-sec .cmn-btn {
  border-radius: 30px;
}

.patient-review-card {
  position: relative;
  min-height: 232px;
  padding: 25px 80px 25px 25px;
  color: #08083b;
  background-color: #fff;
  border: 1px solid #d2d2d2;
  border-radius: 18px;
}

.patient-review-card h3 {
  margin: 0 0 8px;
  color: #08083b;
  font-size: 22px;
  font-weight: 600;
}

.patient-review-card h4 {
  margin: 0 0 8px;
  color: #26376f;
  font-size: 16px;
  font-weight: 500;
}

.patient-review-stars {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #553cf5;
  font-size: 15px;
}

.patient-review-stars .muted {
  color: #e8e5ff;
}

.patient-review-card p {
  margin: 18px 0 0;
  color: #747097;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.43;
}

.patient-review-avatar {
  position: absolute;
  top: 24px;
  right: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  color: #fff;
  background-color: #2F3293;
  border-radius: 50%;
  font-size: 31px;
}

.patient-review-avatar i {
  color: #fff;
  line-height: 1;
}

.patient-review-carousel .owl-nav {
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin-top: 30px;
  gap: 10px;
}

.patient-review-carousel .owl-nav button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #28375F !important;
  color: #fff !important;
  background-color: #28375F !important;
  border-radius: 50%;
  font-size: 18px !important;
  transition: all 0.3s;
}

.patient-review-carousel .owl-nav button:hover {
  background-color: #fff !important;
  color: #28375F !important;
}

/* ========== Patient Review Area End ========== */


/* ========== FAQ Area ========== */

.faq-sec {
  padding: 0 0 46px;
  background-color: #fff;
}

.faq-area img {
  width: 250px;
  margin-bottom: 20px;
  border-radius: 20px;
  background-color: #fff;
  padding-left: 5px;
}

.faq-bx {
  padding: 30px 20px;
  background-color: #eee;
  border-radius: 22px;
}

.faq-area .accordion {
  display: grid;
  gap: 14px;
}

.faq-area .accordion-item {
  overflow: hidden;
  background-color: transparent;
  border: 1px solid #2F3293;
  border-radius: 18px;
  transition: all 0.3s;
}

.faq-area .accordion-item:has(.accordion-button:not(.collapsed)) {
  background-color: #2F3293;
}

.faq-area .accordion-button {
  position: relative;
  min-height: 62px;
  padding: 14px 52px 14px 20px;
  color: #4d4d4d;
  background-color: transparent;
  border: 0;
  border-radius: 18px;
  box-shadow: none;
  font-size: 16px;
  font-weight: 500;
}

.faq-area .accordion-button:not(.collapsed) {
  min-height: 54px;
  padding-bottom: 10px;
  color: #fff;
}

.faq-area .accordion-button::after {
  position: absolute;
  top: 50%;
  right: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  content: "\f061";
  color: #fff;
  background-image: none;
  background-color: #2F3293;
  border-radius: 50%;
  font-family: "Font Awesome 6 Free";
  font-size: 13px;
  font-weight: 900;
  transform: translateY(-50%) rotate(90deg);
  transition: all 0.3s;
}

.faq-area .accordion-button:not(.collapsed)::after {
  color: #2F3293;
  background-color: #fff;
  transform: translateY(-50%) rotate(270deg);
}

.faq-area .accordion-body {
  padding: 0 20px 18px;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.22;
}

/* ========== FAQ Area End ========== */


/* ========== Visionary Blog Area ========== */

.blog-sec {
  padding: 46px 0 54px;
  background-color: #fff;
}


.blog-btn {
  border-radius: 35px;
}

.blog-wrap {
  position: relative;
}

.blog-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  padding: 12px 12px 20px;
  background-color: #fff;
  border: 1px solid #293e5f14;
  border-radius: 22px;
  box-shadow: 0 4px 16px #0a25400d;
  transition: all 0.3s;
}

.blog-card:hover {
  border-color: #293e5f24;
  box-shadow: 3px 4px 11px #0a25400d;
  transform: translateY(-2px);
}

.blog-img {
  overflow: hidden;
  border-radius: 16px;
  background-color: #eef0fa;
}

.blog-img img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 16px;
  transition: transform 0.25s ease;
}

.blog-card:hover .blog-img img {
  transform: scale(1.06);
}

.blog-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0 12px;
  color: #747097;
  font-size: 14px;
  font-weight: 400;
}

.blog-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 13px;
  color: #293e59;
  background-color: #dcdcf2;
  border-radius: 22px;
  font-size: 13px;
  font-weight: 600;
}

.blog-card h3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  flex: 1 0 auto;
  margin: 0;
  color: #08083b;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.3;
}

.blog-readmore {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: #2F3293;
  font-size: 14px;
  font-weight: 600;
}

.blog-readmore i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  color: #2F3293;
  background-color: #dcdcf2;
  border-radius: 50%;
  font-size: 11px;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.blog-card:hover .blog-readmore i {
  color: #fff;
  background-color: #2F3293;
  transform: translateX(3px);
}

.blog-carousel .owl-nav {
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin-top: 26px;
  gap: 10px;
}

.blog-carousel .owl-nav button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #28375F !important;
  color: #fff !important;
  background-color: #28375F !important;
  border-radius: 50%;
  font-size: 18px !important;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.blog-carousel .owl-nav button:hover {
  background-color: #fff !important;
  color: #28375F !important;
  transform: translateY(-2px);
}

/* ========== Visionary Blog Area End ========== */


/* ========== Footer ========== */

.footer-area {
  padding: 50px 0 30px;
}

.footer-wrap {
  position: relative;
  padding-top: 110px;
}

.footer-top-shape {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120px;
  z-index: 1;
  pointer-events: none;
}

.footer-top-shape svg {
  display: block;
  width: 100%;
  height: 100%;
}

.footer-top-shape path {
  fill: #293e59;
}

.footer-logo {
  position: absolute;
  top: -10px;
  left: 25%;
  transform: translateX(-50%);
  z-index: 3;
}

.footer-logo img {
  width: 140px;
}

.footer-body {
  position: relative;
  padding: 10px 0 100px;
  background: #293e59;
  border-radius: 0 0 22px 22px;
}


.footer-subscribe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 60px;
}

.footer-title {
  margin: 0;
  color: #fff;
  font-size: 25px;
  font-weight: 600;
}

.subscribe-form {
  display: flex;
  align-items: center;
  width: 400px;
  height: 55px;
  margin: 0;
  overflow: hidden;
  background: #211c4b;
  border-radius: 22px;
}

.subscribe-form input {
  width: 100%;
  padding: 0 22px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font-size: 15px;
}

.subscribe-form input::placeholder {
  color: rgba(255, 255, 255, 0.9);
}

.subscribe-form button {
  height: 100%;
  padding: 0 24px;
  border: 0;
  background: #fff;
  color: #293e59;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s ease;
}

.subscribe-form button:hover {
  background: #cdd2d9;
}

.footer-links {
  display: flex;
  justify-content: space-between;
}

.footer-head {
  margin: 0 0 28px;
  color: #aaa8dd;
  font-size: 20px;
  font-weight: 500;
}

.footer-second-links {
  padding-top: 50px;
}

.footer-links ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-links ul li {
  margin-bottom: 15px;
}

.footer-links ul li:last-child {
  margin-bottom: 0;
}

.footer-links ul li a {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  text-decoration: none;
  transition: 0.3s ease;
}

.footer-links ul li a:hover {
  color: #aaa8dd;
}

.foot-inr-cnt {
  padding-right: 40px;
}

.footer-contact-title {
  margin: 0 0 24px;
  color: #fff;
  font-size: 21px;
  font-weight: 500;
}

.footer-address {
  margin-bottom: 25px;
}

.footer-address a {
  display: block;
  width: fit-content;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.footer-address .footer-phone {
  margin-top: 10px;
  text-decoration: none;
}

.footer-address .footer-phone i {
  font-size: 23px;
  padding-left: 5px;
  transition: all 0.3s;
}

.footer-address .footer-phone:hover i {
  transform: rotate(0);
}

.footer-bottom-row {
  display: flex;
  justify-content: space-between;
}

.footer-white-title {
  margin: 0 0 24px;
  color: #fff;
  font-size: 21px;
  font-weight: 500;
}

.footer-socials {
  display: flex;
  align-items: center;
  gap: 14px;
}

.footer-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  background: #fff;
  color: #6653d9;
  border-radius: 10px;
  font-size: 17px;
  text-decoration: none;
  transition: 0.3s ease;
}

.footer-socials a:hover {
  background: #6653d9;
  color: #fff;
}

.footer-hours-block p {
  margin: 0;
  color: #fff;
  font-size: 16px;
}

.bottom-footer-shape {
  position: absolute;
  right: 18%;
  bottom: 0px;
  width: 560px;
  height: 70px;
}

.bottom-footer-shape svg {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.bottom-footer-shape path {
  fill: #fff;
}

.bottom-footer {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 15px;
}

.bottom-footer p {
  margin: 0;
  color: #11173e;
  font-size: 15px;
  font-weight: 400;
}

.bottom-footer p a {
  color: #11173e;
  font-weight: 500;
  text-decoration: none;
}

.bottom-footer p a:hover {
  text-decoration: underline;
}


/* ========== Footer End ========== */


/* ========== About Page Start ========== */

.about-bnr-bx {
  position: relative;
  margin-top: 20px;
  border-radius: 20px;
  overflow: hidden;
}

.about-bnr-img img {
  width: 100%;
  ;
}

.about-banner-cnt {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.about-banner-cnt .heading h2 {
  line-height: 75px;
  font-size: 70px;
  margin-bottom: 20px;
  color: #fff;
}

.about-banner-cnt .heading h4 {
  line-height: 40px;
  font-size: 31px;
  margin-bottom: 20px;
  color: #fff;
  font-weight: 600;
  text-transform: capitalize;
}

.about-banner-cnt .heading p {
  color: #fff;
  margin-bottom: 40px;
}

.about-bnr-badge {
  display: inline-flex;
  padding: 10px 20px;
  margin-bottom: 15px;
  color: #111235 !important;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 10px;
  font-size: 17px;
  font-weight: 600;
}


.about-intro-sec {
  padding: 60px 0
}

.about-intro-img img {
  border-radius: 20px;
}

.about-story-sec {
  padding: 0 0 60px;
}

.about-story-bx {
  overflow: hidden;
  padding: 26px;
  background-color: #293e59;
  border-radius: 20px;
}

.about-story-img img {
  width: 100%;
  height: 300px;
  border-radius: 20px;
  object-fit: cover;
}

.about-story-cnt {
  padding-left: 18px;
}

.about-story-cnt .heading {
  margin-bottom: 20px;
}

.about-story-cnt .heading h2 {
  color: #fff;
  font-size: 30px;
  line-height: 38px;
}

.about-story-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 22px;
}

.about-story-stat {
  min-height: 112px;
  padding: 18px 10px;
  text-align: center;
  background-color: #fff;
  border-radius: 14px;
}

.about-story-stat i {
  color: #111;
  font-size: 27px;
  line-height: 1;
}

.about-story-stat strong {
  display: block;
  margin-top: 9px;
  color: #111;
  font-size: 25px;
  font-weight: 800;
  line-height: 1;
}

.about-story-stat span {
  display: block;
  margin-top: 5px;
  color: #333;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
}

.about-story-cnt p {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
}

.about-founders-sec {
  padding: 50px 0 10px;
  background: #fff;
}

.about-founder-card .doctor-img img {
  height: 100%;
  transform: scale(1.05);
}

.about-founder-card .doctor-cnt {
  padding: 25px 8px 20px;
  background-color: #f1f1f0;
  border-radius: 0 0 20px 20px;
  margin: 10px 0 0;
}

.chairman-sec {
  padding: 0;
}

.chairman-card img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  object-position: center top;
  border-radius: 30px;
}

.chairman-name-wrap {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  width: 250px;
  padding: 20px 20px 0 0;
  background-color: #fff;
  border-radius: 0 25px 0 0;
}

.chairman-name-wrap::before {
  content: "";
  position: absolute;
  left: 0;
  top: -24px;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 0 24px;
  box-shadow: -10px 10px 0 10px #fff;
}

.chairman-name-wrap::after {
  content: "";
  position: absolute;
  right: -24px;
  bottom: 0;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 0 0 0 24px;
  box-shadow: -10px 10px 0 10px #fff;
}

.chairman-name {
  position: relative;
  z-index: 2;
  padding: 24px 22px;
  background-color: #2F3293;
  border-radius: 0 25px 0 25px;
}

.chairman-name h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
}

.chairman-name .cmn-btn {
  gap: 8px;
  padding: 8px 16px;
  color: #111;
  background-color: #fff;
  border-color: #fff;
  border-radius: 30px;
  font-size: 13px;
}

.chairman-name .cmn-btn:hover {
  background-color: transparent;
  color: #fff;
}

.chairman-name .cmn-btn i {
  padding: 0;
  font-size: 13px;
}

.about-values-sec {
  padding: 60px 0;
}

.about-values-head .heading {
  margin: 0;
}

.about-values-head p {
  margin: 0;
}

.about-values-tabs {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #263850;
  padding: 10px;
  border-radius: 15px;
  margin: 20px 0 50px;
}

.about-value-tab {
  position: relative;
  min-height: 70px;
  width: 100%;
  padding: 20px 30px;
  color: #fff;
  background: transparent;
  border: 0;
  border-radius: 18px 18px 0 0;
  font-size: 25px;
  letter-spacing: 1px;
  font-weight: 700;
  text-transform: uppercase;
  transition: all 0.3s ease;
}

.about-value-tab.is-active {
  color: #2e4984;
  background: #fff;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}

.about-value-tab.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 14px;
  background: #2e4984;
  border-radius: 14px 14px 0 0;
}

.about-value-tab:not(.is-active):hover {
  background: rgba(255, 255, 255, 0.06);
}

.about-values-img img {
  border-radius: 20px;
  height: 400px;
  width: 100%;
  object-fit: cover;
}

.about-values-content .about-value-panel {
  display: none;
}

.about-values-content .about-value-panel.is-active {
  display: block;
}

.partners-sec {
  padding: 45px 0 60px;
  overflow: hidden;
}

.partners-sec .heading {
  max-width: 780px;
  margin: 0 auto 24px;
}

.partners-sec .heading p {
  margin: 0;
}

.partners-marquee {
  position: relative;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.partners-track {
  display: flex;
  align-items: center;
  gap: 24px;
  width: max-content;
  animation: partnersMarquee 24s linear infinite;
}

.partners-marquee:hover .partners-track {
  animation-play-state: paused;
}

.partner-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 185px;
  height: 82px;
  padding: 16px;
  background-color: #fff;
  border: 1px solid rgba(40, 55, 95, 0.12);
  border-radius: 10px;
  transition: all 0.3s ease;
}

.partner-logo img {
  max-width: 100%;
  max-height: 52px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.82;
  transition: all 0.3s ease;
}

.partner-logo:hover {
  border-color: rgba(47, 50, 147, 0.42);
}

.partner-logo:hover img {
  filter: grayscale(0);
  opacity: 1;
}

@keyframes partnersMarquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-50% - 12px));
  }
}

.journey-sec {
  padding: 60px 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 24%, rgba(255, 255, 255, 0.13), transparent 28%),
    linear-gradient(135deg, #30379d 0%, #263b61 100%);
}

.journey-sec .heading h2 {
  color: #fff;
}

.journey-wrap {
  display: grid;
  grid-template-columns: 310px 55px 1fr;
  gap: 35px;
  max-width: 1140px;
  margin: 0 auto;
}

.journey-phase-list {
  height: 430px;
  overflow-y: auto;
  padding: 0 18px 0 0;
}

.journey-phase-list::-webkit-scrollbar {
  width: 28px;
}

.journey-phase-list::-webkit-scrollbar-track {
  background: #98a3c0;
  border-radius: 8px;
}

.journey-phase-list::-webkit-scrollbar-thumb {
  background: #e1e3e4;
  background-clip: content-box;
  border: 7px solid transparent;
  border-radius: 10px;
}


.journey-phase-btn {
  display: grid;
  grid-template-columns: 1fr 90px 20px;
  align-items: center;
  gap: 15px;
  width: 100%;
  min-height: 66px;
  margin-bottom: 18px;
  padding: 12px 18px;
  color: #fff;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid transparent;
  border-radius: 8px;
  text-align: left;
  transition: 0.3s ease;
}

.journey-phase-btn span {
  font-size: 15px;
  font-weight: 600;
}

.journey-phase-btn strong {
  padding-left: 18px;
  border-left: 1px solid #ffffffb3;
  font-size: 27px;
  font-weight: 800;
  line-height: 1;
}

.journey-phase-btn i {
  font-size: 18px;
}

.journey-phase-btn:hover,
.journey-phase-btn.is-active {
  background: #ffffff4d;
  border-color: #ffffffcc;
}


.journey-line {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 70px;
  height: 430px;
  overflow-y: auto;
  padding: 26px 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.journey-line::-webkit-scrollbar {
  display: none;
}

.journey-line::before {
  content: "";
  position: absolute;
  top: 33px;
  bottom: auto;
  left: 50%;
  width: 3px;
  height: 2100px;
  background: rgba(255, 255, 255, 0.55);
  transform: translateX(-50%);
}

.journey-line span {
  flex: 0 0 auto;
  position: relative;
  z-index: 1;
  width: 14px;
  height: 14px;
  background: #fff;
  border-radius: 50%;
  transition: 0.3s ease;
}

.journey-line span.is-active {
  background: #30379d;
  border: 2px solid #fff;
  box-shadow: 0 0 0 5px #ffffff40;
  transform: scale(1.15);
}

.journey-detail-list {
  height: 430px;
  overflow-y: auto;
  padding-bottom: 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.journey-detail-list::-webkit-scrollbar {
  display: none;
}

.journey-detail {
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  min-height: 66px;
  margin-bottom: 18px;
  overflow: hidden;
  color: #fff;
  background: #ffffff21;
  border: 1px solid transparent;
  border-radius: 8px;
  opacity: 0.35;
  filter: blur(3px);
  transition: 0.3s ease;
}

.journey-detail span {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  color: #fff;
  background: #ffffff14;
  border-right: 1px solid #ffffffa6;
  font-size: 22px;
  font-weight: 800;
}

.journey-detail p {
  margin: 0;
  padding: 14px 25px;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
}

.journey-detail.is-active {
  background: #ffffff45;
  border-color: #ffffffcc;
  opacity: 1;
  filter: blur(0);
}

.about-faq-sec {
  padding: 70px 0 20px;
}

/* ========== About Page End ========== */


/* ========== Treatment Inner Page Start ========== */

.inner-banner-bx {
  position: relative;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 20px;
  padding: 60px 0;
  margin-top: 20px;
}

.inner-banner-bx::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(18 26 72 / 60%) 0%, rgb(31 45 111 / 48%) 48%, rgb(9 20 39 / 42%) 100% 100%);
}

.inner-banner-cnt {
  position: relative;
  z-index: 1;
}

.inner-banner .heading {
  margin: 0;
}

.inner-banner-badge {
  display: inline-flex;
  padding: 10px 18px;
  margin-bottom: 26px;
  color: #121936;
  background-color: #fff;
  border-radius: 5px;
  font-size: 15px;
  font-weight: 700;
}

.inner-banner .heading h2 {
  color: #fff;
  font-size: 50px;
  line-height: 60px;
}

.inner-banner .heading h3 {
    font-size: 19px;
    font-weight: 600;
    color: #fff;
}

.inner-banner .heading h4 {
  margin: 0 0 22px;
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  text-transform: uppercase;
}

.inner-banner .heading p {
  margin-bottom: 30px;
  color: #fff;
  font-size: 18px;
}

.inner-banner-btn.cmn-btn {
  color: #222;
  background-color: #fff;
  border-color: #fff;
  border-radius: 40px;
}

.inner-banner-btn.cmn-btn:hover {
  color: #fff;
  background-color: transparent;
}

.inner-banner-form {
  max-width: 450px;
  margin-left: auto;
}

.inner-banner .form-area {
  background-color: #fff;
}

.inner-banner .form-area .heading {
  margin-bottom: 20px;
}

.inner-banner .form-area .heading h2 {
  color: #08083b;
  font-size: 24px;
  line-height: 1.2;
}

.inner-banner .form-area .form-control,
.inner-banner .form-area .form-select {
  color: #2f2f2f;
  background-color: #f8f9fb;
  border-color: #d8dce5;
}

.inner-banner .form-area .form-control::placeholder {
  color: #4f5665;
}

.inner-banner .form-area .form-select {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2328375F' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

.inner-banner .form-area .form-select option {
  color: #2f2f2f;
  background-color: #fff;
}

.inner-banner .form-area .form-control:focus,
.inner-banner .form-area .form-select:focus {
  color: #2f2f2f;
  background-color: #fff;
  border-color: #2F3293;
}

.inner-banner .form-area .cmn-btn {
  color: #fff;
  background-color: #2F3293;
  border-color: #2F3293;
  border-radius: 35px;
}

.inner-banner .form-area .btn-submit:hover {
  color: #2F3293;
  background-color: #fff;
}

.treatment-intro-sec {
  padding: 60px 0;
}

.treatment-intro-img img {
  border-radius: 20px;
}

.treatment-candidate-sec {
  padding: 0 0 60px;
}

.treatment-candidate-img img {
  border-radius: 20px;
}

.treatment-candidate-bx {
  overflow: hidden;
  padding: 24px;
  background-color: #28375F;
  border-radius: 15px;
}

.treatment-candidate-cnt .heading {
  margin-bottom: 16px;
}

.treatment-candidate-cnt .heading h2,
.treatment-candidate-cnt .heading h4,
.treatment-candidate-cnt p,
.treatment-light-list li {
  color: #fff;
}


.treatment-candidate-cnt .heading h4 span {
	filter: brightness(0) invert(1);
}

.treatment-light-list li::before {
  color: #fff;
}

.treatment-white-btn.cmn-btn {
  margin-top: 8px;
  color: #28375F;
  background-color: #fff;
  border-color: #fff;
  border-radius: 35px;
}

.treatment-white-btn.cmn-btn:hover {
  color: #fff;
  background-color: transparent;
}

.treatment-experience-etra-sec{
  padding:50px 0 !important;
}

.treatment-experience-sec {
  padding: 0 0 50px;
  background-color: #fff;
}

.treatment-stat-img img {
    border-radius: 20px;
    object-fit: cover;
    position: relative;
    min-height: 580px;
}

.treatment-stat-card {
  position: absolute;
  left: 38px;
  bottom: -18px;
  z-index: 5;
  width: 435px;
  padding: 20px 20px;
  overflow: hidden;
  background: linear-gradient(120deg, #a0887a1f 0%, #bebcb93b 48%);
  border: 1px solid #ffffff80;
  border-radius: 20px;
  box-shadow: 0 15px 35px #141f2d26, inset 0 1px 0 #ffffff8c;
  backdrop-filter: blur(18px) saturate(130%);
  -webkit-backdrop-filter: blur(18px) saturate(130%);
}

.treatment-stat-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5px 10px;
  color: #fff;
}

.treatment-stat-top strong {
  font-size: 36px;
  font-weight: 700;
}

.treatment-stat-top span {
  color: #fff;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.35;
  text-align: end;
}

.treatment-stat-bx {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  color: #171717;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 13px;
}

.treatment-stat-bx span {
  font-size: 16px;
  font-weight: 700;
}

.treatment-stat-bx i {
  color: #1554d1;
  font-size: 23px;
}

.treatment-feature-list {
  display: grid;
  gap: 18px;
  margin-top: 24px;
}

.treatment-feature-card {
  align-items: flex-start;
  display: flex;
  gap: 14px;
  padding: 22px 26px;
  background-color: #f7f8fb;
  border: 1px solid rgba(40, 55, 95, 0.12);
  border-radius: 14px;
  transition: all 0.3s;
}

.treatment-feature-card:hover {
  border-color: rgba(47, 50, 147, 0.28);
  box-shadow: 0 14px 32px rgba(40, 55, 95, 0.08);
  transform: translateY(-2px);
}

.treatment-feature-card i {
  flex: 0 0 auto;
  margin-top: 3px;
  color: #0d5be1;
}

.treatment-feature-card h3 {
  margin: 0 0 6px;
  color: #08083b;
  font-size: 18px;
  font-weight: 700;
}

.treatment-feature-card p {
  margin: 0;
  font-size: 14px;
}

.treatment-choose-sec {
  padding: 60px 0;
  background-color: #fff;
}

.treatment-choose-sec .call-back-card h3 {
  font-size: 18px;
  font-weight: 600;
}

.treatment-choose-sec .call-back-bx {
  width: 300px;
}

.treatment-choose-sec .call-now-btn.cmn-btn {
  padding: 10px 20px;
}

.treatment-choose-sec .call-back-card {
  padding: 20px;
}

/* ========== Treatment Inner Page End ========== */


/* ========== Contact Us Page ========== */


.contact-vision-centers-sec {
  padding: 60px 0;
  background-color: #f4f4f4;
}

.contact-centers-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 330px;
    padding: 34px;
    color: #fff;
    background: #28375F;
    border-radius: 18px;
    box-shadow: 0 20px 42px rgba(40, 55, 95, 0.16);
}

.contact-centers-kicker {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 18px;
  padding: 7px 14px;
  color: #28375F;
  background-color: #fff;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 800;
}

.contact-centers-count {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
}

.contact-centers-count strong {
  color: #fff;
  font-size: 82px;
  font-weight: 800;
  line-height: 0.9;
}

.contact-centers-count span {
  color: #fff;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
}

.contact-centers-panel h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.contact-centers-panel p {
  margin: 0 0 24px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.55;
}

.contact-centers-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.contact-center-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 90px;
  padding: 15px 96px 15px 16px;
  overflow: hidden;
  color: #121936;
  background-color: #fff;
  border: 0;
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(20, 32, 61, 0.07);
  text-align: left;
  transition: all 0.3s;
}

.contact-center-card::before {
  content: none;
}

.contact-center-card em {
  position: absolute;
  right: 20px;
  top: 35%;
  color: #28375f12;
  font-size: 40px;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
  pointer-events: none;
  transform: translateY(-50%);
}

.contact-center-card i {
  color: #2F3293;
  font-size: 45px;
}

.contact-center-card span {
  display: block;
  color: #121936;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.25;
}

.contact-center-card small {
  display: block;
  margin-top: 3px;
  color: #646978;
  font-size: 13px;
  font-weight: 600;
}

.contact-center-card:hover {
  color: #121936;
  background-color: #f8f9ff;
  box-shadow: 0 12px 28px rgba(20, 32, 61, 0.07);
  transform: translateY(-2px);
}

.contact-centers-btn.cmn-btn {
  width: fit-content;
  color: #28375F;
  background-color: #fff;
  border-color: #fff;
  border-radius: 35px;
}

.contact-centers-btn.cmn-btn:hover {
  color: #fff;
  background-color: transparent;
}


/* ========== Contact Us Page End ========== */


/* ========== Location Page ========== */

.location-main-banner .inner-banner-bx::before {
  opacity: 0.66;
}

.location-main-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

.location-main-actions .inner-banner-btn {
  margin-top: 0;
}

.location-outline-btn.cmn-btn {
  color: #fff;
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.72);
}

.location-outline-btn.cmn-btn:hover {
  color: #28375F;
  background-color: #fff;
}

.location-main-panel {
  padding: 34px;
  color: #fff;
  background: rgba(8, 8, 59, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(8, 8, 59, 0.24);
  backdrop-filter: blur(10px);
}

.location-main-panel span {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 8px 14px;
  color: #08083b;
  background-color: #fff;
  border-radius: 35px;
  font-size: 13px;
  font-weight: 700;
}

.location-main-panel strong {
  display: block;
  color: #fff;
  font-size: 54px;
  font-weight: 800;
  line-height: 1;
}

.location-main-panel p {
  margin: 14px 0 22px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 15px;
  line-height: 1.55;
}

.location-main-panel-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.location-main-panel-grid div {
  padding: 14px 10px;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  text-align: center;
}

.location-main-panel-grid b,
.location-main-panel-grid small {
  display: block;
  color: #fff;
}

.location-main-panel-grid b {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.1;
}

.location-main-panel-grid small {
  margin-top: 4px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
}

.location-finder-sec {
  padding: 70px 0;
  background:
    linear-gradient(180deg, #fff 0%, #f7f9ff 100%);
}

.location-finder-head {
  margin-bottom: 30px;
}

.location-finder-head p {
  margin: 0;
  color: #555;
  font-size: 16px;
  line-height: 1.65;
}

.location-finder-map {
  position: relative;
  order: 2;
  overflow: hidden;
  height: 610px;
  background-color: #eef1f4;
  border: 1px solid rgba(40, 55, 95, 0.1);
  border-radius: 18px;
  box-shadow: 0 20px 48px rgba(16, 32, 60, 0.1);
}

.location-finder-frame {
  display: block;
  width: 100%;
  height: 610px;
  border: 0;
  filter: saturate(0.86);
}

.location-finder-list {
  order: 1;
}

.location-finder-card.branch-card {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  overflow: hidden;
  border-radius: 18px;
  cursor: pointer;
}

.location-finder-card.branch-card:hover,
.location-finder-card.branch-card.is-active {
  transform: translateY(-2px);
}

.location-finder-img {
  flex: 0 0 50%;
  overflow: hidden;
}

.location-finder-img img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  transition: all 0.3s;
}

.location-finder-card:hover .location-finder-img img,
.location-finder-card.is-active .location-finder-img img {
  transform: scale(1.04);
}

.location-finder-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.location-finder-content span {
  display: inline-flex;
  margin-bottom: 12px;
  padding: 7px 14px;
  color: #fff;
  background-color: #2F3293;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 800;
}

.location-finder-content h3 {
  margin: 0 0 10px;
  color: #08083b;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}

.location-finder-content p {
  margin: 0;
  color: #555;
  font-size: 13px;
  line-height: 1.55;
}

.location-finder-content {
  padding: 0 20px;
}

.location-finder-meta {
  padding: 20px 20px 20px;
  display: flex;
  gap: 10px;
}

.location-finder-meta p {
  margin: 0;
  color: #28375F;
  font-size: 14px;
  font-weight: 700;
}

.location-finder-meta i {
  color: #2F3293;
}

.location-finder-meta a {
  color: #28375F;
}

.location-card-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  margin: 0 auto;
  padding: 11px 18px;
  color: #2F3293;
  background-color: #f2f5ff;
  border-radius: 30px;
  font-size: 15px;
  font-weight: 700;
  transition: all 0.3s;
}

.location-card-link:hover {
  color: #fff;
  background-color: #28375F;
}

.location-appointment-sec {
  padding: 60px 0;
  background-color: #f4f4f4;
}

.location-appointment-sec p {
  margin: 0;
  color: #555;
  font-size: 16px;
  line-height: 1.65;
}

.location-reach-sec {
  padding: 60px 0;
  background-color: #f4f4f4;
}

.location-reach-cnt .heading {
  position: relative;
}

.location-reach-cnt .heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 150px;
  height: 1px;
  background-color: #2F3293;
}

.location-reach-item {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 14px;
  align-items: flex-start;
}

.location-reach-item i {
  margin-top: 4px;
  color: #111;
  font-size: 28px;
  line-height: 1;
  text-align: center;
}

.location-reach-item strong {
  display: block;
  margin-bottom: 5px;
  color: #2F3293;
  font-size: 18px;
  line-height: 1.2;
}

.location-reach-item p {
  color: #555;
}

.location-reach-item a {
  color: #555;
}

.location-map-card iframe {
  display: block;
  width: 100%;
  height: 550px;
  border-radius: 20px;
}

.location-access-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 34px;
}

.location-access-card {
  padding: 26px 22px;
  color: #fff;
  background-color: #28375F;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 15px 34px rgba(20, 32, 61, 0.12);
}

.location-access-card.is-featured {
  background-color: #2F3293;
}

.location-access-card i {
  margin-bottom: 12px;
  color: #fff;
  font-size: 26px;
}

.location-access-card h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
}

.location-access-card p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.55;
}

/* ========== Location Page End ========== */


/* ========== Our Doctors Page ========== */


.doctor-banner .inner-banner-bx {
  padding-bottom: 0 !important;
}

.doctor-listing-sec {
  padding: 60px 0;
  background-color: #f4f4f4;
}

.doctor-listing-sec .heading {
  margin-bottom: 0;
}

.doctor-listing-sec .heading h2 {
  max-width: 520px;
}

.doctor-listing-sec p {
  margin: 0 0 6px;
  color: #2f3440;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
}

.doctor-filter-form {
  display: flex;
  align-items: end;
  gap: 18px;
  margin: 35px 0;
}

.doctor-filter-form label {
  display: grid;
  gap: 8px;
  min-width: 210px;
  margin: 0;
}

.doctor-filter-form label span {
  color: #161b31;
  font-size: 14px;
  font-weight: 700;
}

.doctor-filter-form select {
  min-height: 48px;
  padding: 0 54px 0 18px;
  color: #3d4352;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%2328375F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 13px auto;
  border: 1px solid rgba(40, 55, 95, 0.16);
  border-radius: 28px;
  font-size: 14px;
  font-weight: 500;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
}

.doctor-filter-btn.cmn-btn {
  justify-content: center;
  gap: 10px;
  min-width: 172px;
  min-height: 48px;
  padding: 12px 24px;
  border-radius: 28px;
  font-size: 14px;
  white-space: nowrap;
}

.doctor-filter-btn.cmn-btn i {
  font-size: 14px;
}

.doctor-list-grid .row {
  gap: 20px 0;
}

.doctor-list-item {
  display: block;
}

.doctor-list-item.is-hidden {
  display: none;
}

.doctor-listing-sec .doctor-card {
  box-shadow: 0 12px 28px rgba(20, 32, 61, 0.07);
  min-height: 420px;
}

.doctor-no-results {
  display: none;
  margin: 20px 0 0;
  padding: 22px;
  color: #28375F;
  background-color: #fff;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

.doctor-no-results.is-visible {
  display: block;
}

.doctor-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 34px;
}

.doctor-page-btn,
.doctor-page-number {
  min-width: 42px;
  height: 42px;
  padding: 0 16px;
  color: #253850;
  background-color: #fff;
  border: 0;
  border-radius: 24px;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 10px 28px rgba(22, 27, 49, 0.08);
  transition: all 0.3s ease;
}

.doctor-page-number {
  padding: 0;
}

.doctor-page-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  width: 42px;
  padding: 0;
}

.doctor-page-arrow i {
  font-size: 15px;
  line-height: 1;
}

.doctor-page-btn:hover,
.doctor-page-number:hover,
.doctor-page-number.is-active {
  color: #fff;
  background-color: #253850;
}

.doctor-consult-sec {
  padding-top: 60px;
}


/* ========== Our Doctors Page End ========== */


/* ========== Doctor Detail Page ========== */

.doctor-detail-banner-cnt .doctor-detail-role {
  display: inline-block;
  margin-bottom: 20px;
  padding: 9px 18px;
  color: #08083b;
  background-color: #fff;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 800;
}

.doctor-banner-img img {
    width: 100%;
    border-radius: 80px 5px;
}

.doctor-detail-banner-cnt h2 {
  margin-bottom: 18px;
}

.doctor-detail-banner-cnt .doctor-detail-exp {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  padding: 10px 22px;
  color: #333;
  background-color: #fff;
  border-radius: 30px;
  font-size: 15px;
  font-weight: 800;
}

.doctor-detail-banner-cnt .doctor-detail-exp i {
  color: #222;
  font-size: 15px;
}

.doctor-detail-meta-item:not(:last-child) {
  margin-bottom: 22px;
}

.doctor-detail-meta-item h3 {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
}

.doctor-detail-meta-item h3::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.75);
}

.doctor-detail-meta-item p {
  margin: 10px 0 30px;
  font-size: 16px !important;
  font-weight: 600;
}

.doctor-detail-contact-sec {
  padding: 40px 0;
  background-color: #fff;
}

.doctor-detail-contact-card {
  height: 100%;
  min-height: 155px;
  padding: 25px;
  color: #fff;
  background-color: #28375F;
  border-radius: 14px;
}

.doctor-detail-contact-card.is-featured {
  background-color: #2F3293;
}

.doctor-detail-contact-card i {
  margin-bottom: 16px;
  color: #fff;
  font-size: 24px;
}

.doctor-detail-contact-card h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
}

.doctor-detail-contact-card p,
.doctor-detail-contact-card a {
  margin: 0;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.doctor-detail-contact-card h4 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 19px;
  font-weight: 800;
}

.doctor-detail-contact-card ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 220px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.doctor-detail-contact-card li {
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.doctor-detail-sec {
  padding: 0 0 40px;
}

/* ========== Doctor Detail Page End ========== */


/* ========== Blog Listing Page ========== */

.blog-main-banner-sec {
  padding: 20px 0 35px;
  background-color: #fff;
}

.blog-main-banner {
  position: relative;
  height: 330px;
  border-radius: 18px;
  overflow: hidden;
}

.blog-main-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.blog-main-banner-cnt {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blog-main-banner h1 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #fff;
  font-size: 42px;
  font-weight: 800;
  max-width: 900px;
  text-align: center;
}

.blog-listing-sec {
  padding: 0 0 50px;
  background-color: #fff;
}

.blog-listing-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 30px;
}

.blog-listing-filter label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: #222;
  font-size: 14px;
  font-weight: 500;
}

.blog-listing-filter select,
.blog-listing-filter input {
  height: 40px;
  border: 1px solid #28375f33 !important;
  border-radius: 18px;
  font-size: 13px;
}

.blog-listing-filter select {
  padding: 0 40px 0 15px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2328375F' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 15px center;
  background-repeat: no-repeat;
  background-size: 12px auto;
  appearance: none;
  -webkit-appearance: none;
}

.blog-search input {
  padding: 0 18px 0 38px;
  color: #fff;
  background-color: #28375F;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.2 11.4C9.07188 11.4 11.4 9.07188 11.4 6.2C11.4 3.32812 9.07188 1 6.2 1C3.32812 1 1 3.32812 1 6.2C1 9.07188 3.32812 11.4 6.2 11.4Z' stroke='white' stroke-width='1.4'/%3E%3Cpath d='M10.2 10.2L13 13' stroke='white' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-position: 15px center;
  background-repeat: no-repeat;
  height: 40px;
  border: 1px solid #28375f33 !important;
  border-radius: 18px;
  font-size: 13px;
}

.blog-listing-sec .row {
  gap: 28px 0;
}

.blog-list-card {
  height: 100%;
  padding: 14px;
  background: #fff;
  border: 1px solid rgba(40, 55, 95, 0.12);
  border-radius: 18px;
  box-shadow: 0 16px 38px rgba(18, 61, 112, 0.1);
  transition: 0.3s ease;
}

.blog-list-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(18, 61, 112, 0.15);
}

.blog-list-img {
  overflow: hidden;
  border-radius: 14px;
}

.blog-list-img img {
  width: 100%;
  height: 245px;
  object-fit: cover;
  transition: 0.35s ease;
}

.blog-list-card:hover .blog-list-img img {
  transform: scale(1.04);
}

.blog-list-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 18px 0 14px;
  color: #5a6172;
  font-size: 13px;
  font-weight: 600;
}

.blog-list-meta span {
  display: inline-flex;
  color: #2F3293;
  background: #eef2ff;
  border-radius: 30px;
  padding: 7px 12px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.blog-list-meta a,
.blog-list-meta time {
  color: #5a6172;
}

.blog-list-card h2 {
  margin: 0 0 12px;
  color: #08083b;
  font-size: 20px;
  font-weight: 700;
}

.blog-list-card h2 a {
  color: #08083b;
}

.blog-list-card h2 a:hover {
  color: #2F3293;
}

.blog-list-card p {
  color: #4f5665;
  font-size: 15px;
  line-height: 1.65;
  margin-bottom: 18px;
}

.blog-list-readmore {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #28375F;
  font-size: 14px;
  font-weight: 800;
}

.blog-list-readmore i {
  color: #2F3293;
  font-size: 18px;
  transition: 0.3s ease;
}

.blog-list-readmore:hover {
  color: #2F3293;
}

.blog-list-readmore:hover i {
  transform: translateX(3px);
}

.blog-detail-sec {
  padding: 0 0 60px;
  background: #fff;
}

.blog-detail-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 30px;
}

.blog-detail-top .blog-list-meta {
  margin: 0;
}

.blog-detail-content {
  color: #4f5665;
}

.blog-detail-content h2 {
  color: #08083b;
  font-size: 34px;
  font-weight: 800;
  line-height: 1.28;
  margin-bottom: 18px;
}

.blog-detail-content h3 {
  color: #08083b;
  font-size: 25px;
  font-weight: 800;
  line-height: 1.35;
  margin: 30px 0 12px;
}

.blog-detail-content h4 {
  color: #28375F;
  font-size: 19px;
  font-weight: 800;
  margin: 22px 0 10px;
}

.blog-detail-content p {
  color: #4f5665;
  font-size: 16px;
  line-height: 1.78;
  margin-bottom: 14px;
}

.blog-detail-img {
  overflow: hidden;
  margin: 26px 0;
  border-radius: 18px;
}

.blog-detail-img img {
  width: 100%;
  height: 430px;
  object-fit: cover;
}

.blog-detail-sidebar {
  position: sticky;
  top: 110px;
}

.blog-sidebar-card,
.blog-sidebar-recent {
  padding: 24px;
  background: #fff;
  border: 1px solid rgba(40, 55, 95, 0.12);
  border-radius: 18px;
  box-shadow: 0 16px 38px rgba(18, 61, 112, 0.1);
}

.blog-sidebar-recent {
  margin-top: 24px;
}

.blog-sidebar-card h3,
.blog-sidebar-recent h3 {
  color: #08083b;
  font-size: 22px;
  font-weight: 800;
  margin-bottom: 18px;
}

.blog-sidebar-card ul {
  padding: 0;
  margin: 0;
}

.blog-sidebar-card li+li {
  border-top: 1px solid rgba(40, 55, 95, 0.1);
}

.blog-sidebar-card li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 0;
  color: #4f5665;
  font-size: 14px;
  font-weight: 700;
}

.blog-sidebar-card li a:hover {
  color: #2F3293;
}

.blog-sidebar-card li span {
  color: #2F3293;
}

.blog-recent-post {
  display: flex;
  gap: 14px;
  padding: 16px 0;
  border-top: 1px solid rgba(40, 55, 95, 0.1);
}

.blog-recent-post:first-of-type {
  padding-top: 0;
  border-top: 0;
}

.blog-recent-post img {
  width: 92px;
  height: 92px;
  flex: 0 0 92px;
  object-fit: cover;
  border-radius: 12px;
}

.blog-recent-post span,
.blog-recent-post time {
  display: inline-block;
  color: #5a6172;
  font-size: 12px;
  font-weight: 700;
}

.blog-recent-post h4 {
  color: #08083b;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  margin: 7px 0 8px;
}

.blog-recent-post a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #28375F;
  font-size: 13px;
  font-weight: 800;
}

.blog-recent-post a:hover {
  color: #2F3293;
}


/* ========== Blog Listing Page End ========== */


/* ========== Education Training Page ========== */

.why-study-sec {
  padding: 60px 0;
}

.why-study-bx {
  background: linear-gradient(135deg, #123d70 0%, #2f3293 52%, #123d70 100%);
  border-radius: 30px;
  padding: 58px;
  box-shadow: 0 24px 55px #123d702e;
}

.why-study-head {
  margin-bottom: 42px;
}

.why-study-head .heading {
  margin-bottom: 18px;
}

.why-study-head .heading h2 {
  -webkit-text-fill-color: #fff;
}

.why-study-head p {
  margin: 0;
  color: #fff;
}

.why-study-highlight {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.why-study-highlight span {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 18px;
  color: #123d70;
  background: #fff;
  border-radius: 40px;
  font-size: 14px;
  font-weight: 700;
}

.why-study-item {
  padding: 30px;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 22px;
  transition: 0.3s ease;
}

.why-study-item:hover {
  transform: translateY(-1px);
}

.why-study-number {
  width: 86px;
  height: 86px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  background: #123d70;
  border-radius: 18px;
}

.why-study-number img {
  max-width: 58px;
  max-height: 62px;
}

.why-study-cnt h3 {
  color: #123d70;
  font-size: 20px;
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.why-study-cnt p {
  color: #123d70;
  font-size: 15px;
  margin: 0;
}

.education-program-sec {
  padding: 50px 0 10px;
  background: linear-gradient(180deg, #f7f9fd 0%, #fff 100%);
}

.education-program-head .heading {
  margin: 0 auto 40px;
}

.education-program-wrap .row {
  gap: 28px 0;
}

.education-program-card {
  position: relative;
  padding: 15px;
  background: #fff;
  border: 1px solid #28375f1a;
  border-radius: 24px;
  box-shadow: 0 18px 42px #123d701a;
  transition: 0.3s ease;
}

.education-program-img {
  overflow: hidden;
  border-radius: 25px 25px 70px 25px;
}

.education-program-img img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  transition: 0.45s ease;
}

.education-program-card:hover .education-program-img img {
  transform: scale(1.04);
}

.education-program-icon {
  position: absolute;
  left: 0;
  bottom: 4%;
}

.education-program-icon img {
  width: 60px;
}

.education-program-card h3 {
  color: #101638;
  margin: 20px 0 10px;
  text-align: center;
}

.education-program-card h3 a {
  color: #101638;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.35;
}

.education-program-card h3 a:hover {
  color: #2f3293;
}

.program-detail-sec {
  padding: 60px 0;
  background: linear-gradient(180deg, #fff 0%, #f7f9fd 54%, #fff 100%);
}

.program-overview-card {
  padding: 24px;
  margin-bottom: 35px;
  background: #fff;
  border: 1px solid #28375f1a;
  border-radius: 28px;
  box-shadow: 0 18px 45px #123d7014;
}

.program-overview-img {
  overflow: hidden;
  border-radius: 24px 24px 80px 24px;
}

.program-overview-img img {
  width: 100%;
  height: 430px;
  object-fit: cover;
}

.program-overview-cnt {
  padding-left: 28px;
}

.program-overview-cnt span {
  display: inline-flex;
  padding: 9px 18px;
  margin-bottom: 16px;
  color: #2f3293;
  background: #eef2ff;
  border-radius: 40px;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.program-overview-cnt h2 {
  color: #08083b;
  font-size: 38px;
  font-weight: 800;
  line-height: 1.18;
  margin-bottom: 14px;
}

.program-overview-cnt p {
  color: #596170;
  font-size: 16px;
  line-height: 1.75;
  margin-bottom: 22px;
}

.program-info-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.program-info-item {
  padding: 18px;
  background: #f7f9fd;
  border: 1px solid #28375f12;
  border-radius: 18px;
}

.program-info-item strong {
  display: block;
  color: #123d70;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 6px;
}

.program-info-item p {
  color: #596170;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  margin: 0;
}

.program-content-card {
  height: 100%;
  padding: 32px;
  background: #fff;
  border: 1px solid #28375f1a;
  border-radius: 24px;
  box-shadow: 0 14px 34px #123d7010;
}

.program-content-card h3 {
  color: #08083b;
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 16px;
}

.program-content-card p {
  color: #687181;
  font-size: 15px;
  line-height: 1.75;
  margin-bottom: 14px;
}

.program-content-card p:last-child {
  margin-bottom: 0;
}

.program-side-card {
  background: linear-gradient(135deg, #123d70 0%, #2f3293 100%);
}

.program-side-card h3,
.program-side-card p,
.program-side-card li {
  color: #fff;
}

.program-side-card .custom-ul li::before {
  color: #fff;
}

.program-eligibility-card {
  background: #f7f9fd;
}

.program-eligibility-card p {
  margin: 0;
}

.program-eligibility-card strong {
  color: #123d70;
}

.program-apply-card {
  margin-top: 35px;
  padding: 35px;
  background: linear-gradient(135deg, #123d70 0%, #2f3293 100%);
  border-radius: 26px;
  box-shadow: 0 18px 45px #123d7024;
}

.program-apply-card h2 {
  color: #fff;
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 8px;
}

.program-apply-card p {
  color: #fff;
  margin: 0;
}

.program-apply-card .cmn-btn {
  color: #123d70;
  background: #fff;
}

.program-apply-card .cmn-btn:hover {
  color: #fff;
  border-color: #fff;
}

.program-toppers-sec {
  padding-top: 55px;
}

.program-toppers-sec .heading {
  max-width: 760px;
  margin: 0 auto 34px;
}

.topper-card {
  height: 100%;
  padding: 14px;
  background: #fff;
  border: 1px solid #28375f1a;
  border-radius: 22px;
  box-shadow: 0 14px 34px #123d7010;
  text-align: center;
  transition: 0.3s ease;
}

.topper-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 45px #123d7018;
}

.topper-img {
  height: 250px;
  overflow: hidden;
  background: #f7f9fd;
  border-radius: 18px 18px 55px 18px;
}

.topper-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}

.topper-img strong {
  color: #fff;
  font-size: 48px;
  font-weight: 900;
}

.topper-cnt {
  padding: 18px 8px 4px;
}

.topper-cnt h3 {
  color: #08083b;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
  margin-bottom: 8px;
}

.topper-cnt p {
  color: #596170;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 8px;
}

.topper-cnt span {
  display: inline-flex;
  padding: 7px 15px;
  color: #2f3293;
  background: #eef2ff;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 900;
}

/* ========== Education Training Page End ========== */


/* ========== Management Team Page ========== */

.management-team-sec {
  padding: 60px 0;
  background: linear-gradient(180deg, #fff 0%, #f7f9ff 100%);
}

.management-team-sec .heading {
  margin-bottom: 40px;
}

.management-team-sec .heading p {
  color: #4d5362;
  margin: 14px auto 0;
}

.management-feature-card,
.management-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(47, 50, 147, 0.12);
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(18, 61, 112, 0.1);
}

.management-feature-card {
  margin-bottom: 28px;
}

.management-card {
  height: 100%;
  transition: 0.3s ease;
}

.management-card-img {
  overflow: hidden;
  background-color: #eef2fb;
}

.management-card-img img {
  width: 100%;
  height: 330px;
  object-fit: cover;
  object-position: top center;
  transition: 0.35s ease;
}

.management-feature-card .management-card-img img {
  height: 400px;
}

.management-card:hover .management-card-img img,
.management-feature-card:hover .management-card-img img {
  transform: scale(1.03);
}

.management-card-body {
  padding: 26px;
}

.management-feature-card .management-card-body {
  padding: 34px 36px;
}

.management-role {
  display: inline-block;
  color: #2F3293;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
  text-transform: uppercase;
}

.management-card-body h3 {
  color: #08083b;
  font-size: 25px;
  font-weight: 800;
  line-height: 1.25;
  margin: 10px 0 14px;
}

.management-feature-card .management-card-body h3 {
  font-size: 34px;
}

.management-card-body p {
  color: #4f5665;
  font-size: 15px;
  line-height: 1.72;
  margin-bottom: 20px;
}

.management-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.management-tags span {
  display: inline-flex;
  align-items: center;
  color: #28375F;
  background: #eef2ff;
  border-radius: 30px;
  padding: 8px 11px;
  font-size: 11px;
  font-weight: 700;
}

/* ========== Management Team Page End ========== */


/* ========== Equipment Page ========== */

.equipment-bnr .about-bnr-bx::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(18, 26, 72, 0.72) 0%, rgba(31, 45, 111, 0.5) 48%, rgba(9, 20, 39, 0.16) 100%);
  pointer-events: none;
}

.equipment-bnr .about-banner-cnt {
  z-index: 2;
}

.equipment-bnr .about-banner-cnt .heading h2 {
  font-size: 50px;
  line-height: 55px;
  margin-bottom: 20px;
}

.equipment-bnr .about-banner-cnt .heading h4 {
  font-size: 22px;
  margin-bottom: 18px;
}

.equipment-bnr .about-banner-cnt .heading p {
  margin-bottom: 30px;
}

.equipment-list-sec {
  padding: 60px 0;
  background: #fff;
}

.equipment-list-sec .heading p {
  color: #4d5362;
  font-size: 16px;
  line-height: 1.75;
  margin: 14px auto 0;
}

.equipment-card {
  height: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(47, 50, 147, 0.12);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(18, 61, 112, 0.08);
  transition: 0.3s ease;
}

.equipment-card:hover {
  border-color: rgba(47, 50, 147, 0.25);
  box-shadow: 0 20px 46px rgba(18, 61, 112, 0.12);
}

.equipment-card-img {
  overflow: hidden;
  padding: 20px 20px 0;
}

.equipment-card-img img {
  width: 100%;
  height: 240px;
  object-fit: contain;
  border-radius: 20px;
  transition: 0.35s ease;
}

.equipment-card:hover .equipment-card-img img {
  transform: scale(1.03);
}

.equipment-card-cnt {
  padding: 20px 24px 26px;
}

.equipment-card-cnt span {
  display: inline-flex;
  color: #2F3293;
  background: #f3f5ff;
  border-radius: 30px;
  padding: 7px 12px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.equipment-card-cnt h3 {
  color: #08083b;
  font-size: 18px;
  font-weight: 700;
  margin: 14px 0 0;
}

/* ========== Equipment Page End ========== */


/* ========== Gallery Videos Handouts Page ========== */

.media-resource-sec {
  padding: 60px 0;
}

.media-tabs {
  width: fit-content;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 auto 45px;
  padding: 7px;
  background: #fff;
  border: 1px solid rgba(40, 55, 95, 0.14);
  border-radius: 15px;
}

.media-tab-btn {
  min-width: 145px;
  padding: 13px 25px;
  color: #28375F;
  background: #f2f4f7;
  border: 0;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 700;
  transition: 0.3s ease;
}

.media-tab-btn:hover,
.media-tab-btn.is-active {
  color: #fff;
  background: #28375F;
  box-shadow: 0 10px 24px rgba(40, 55, 95, 0.2);
}

.media-tab-panel {
  display: none;
}

.media-tab-panel.is-active {
  display: block;
}

.media-gallery-card,
.media-handout-card {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(47, 50, 147, 0.12);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(18, 61, 112, 0.08);
  transition: 0.3s ease;
}

.media-gallery-card:hover,
.media-handout-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 46px rgba(18, 61, 112, 0.12);
}

.media-gallery-card img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  transition: 0.35s ease;
}

.media-gallery-card-large img,
.media-gallery-card-tall img {
  height: 430px;
}

.media-gallery-card-wide img {
  height: 360px;
}

.media-gallery-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(8, 8, 59, 0.32));
  opacity: 0;
  pointer-events: none;
  transition: 0.3s ease;
}

.media-gallery-card:hover::after {
  opacity: 1;
}

.media-handout-card img {
  width: 100%;
  padding: 10px;
  border-radius: 30px;
  transition: 0.35s ease;
}

.media-gallery-card:hover img,
.media-handout-card:hover img {
  transform: scale(1.01);
}

.media-empty-state {
  max-width: 620px;
  margin: 0 auto;
  padding: 54px 30px;
  text-align: center;
  background: #f7f9ff;
  border: 1px solid rgba(47, 50, 147, 0.12);
  border-radius: 18px;
}

.media-empty-state i {
  width: 68px;
  height: 68px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  color: #fff;
  background: #28375F;
  border-radius: 50%;
  font-size: 26px;
}

.media-empty-state h3 {
  color: #08083b;
  font-size: 26px;
  font-weight: 800;
  margin-bottom: 10px;
}

.media-empty-state p {
  color: #4d5362;
  margin: 0;
}

/* ========== Gallery Videos Handouts Page End ========== */


/* ========== Careers Page ========== */

.careers-hero-sec {
  padding: 60px 0;
  background: linear-gradient(180deg, #fff 0%, #fff 44%, #f3f5ff 44%, #f3f5ff 100%);
}

.careers-hero-img {
  position: relative;
  max-width: 440px;
  margin: 0 auto;
  padding-bottom: 34px;
}

.careers-hero-img::after {
  content: "";
  position: absolute;
  left: 3%;
  right: 3%;
  bottom: -10px;
  height: 150px;
  border-bottom: 16px solid #2F3293;
  border-radius: 0 0 50% 50% / 0 0 100% 100%;
  opacity: 0.86;
}

.careers-hero-img img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 0 0 220px 220px;
  box-shadow: 0 18px 45px rgba(40, 55, 95, 0.12);
}

.careers-hero-cnt span {
  display: inline-flex;
  color: #2F3293;
  background: #eef2ff;
  border-radius: 30px;
  padding: 8px 15px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 18px;
}

.careers-hero-cnt h1 {
  color: #08083b;
  font-size: 48px;
  font-weight: 700;
  margin-bottom: 22px;
}

.careers-why-sec {
  padding-bottom: 60px;
  background: #f3f5ff;
}

.careers-openings-sec {
  padding: 70px 0;
  background: #f3f5ff;
}

.careers-offer-sec,
.career-apply-sec {
  padding: 60px 0;
  background: #fff;
}

.careers-value-card {
  position: relative;
  height: 100%;
  min-height: 275px;
  padding: 76px 26px 30px;
  background: #fff;
  border-radius: 28px 28px 88px 28px;
  box-shadow: 0 14px 34px rgba(40, 55, 95, 0.08);
  transition: 0.3s ease;
}

.careers-card-icon {
  position: absolute;
  top: 36px;
  left: 0;
  width: 58px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
}

.careers-card-icon img {
  width: 58px;
  height: auto;
  filter: hue-rotate(18deg) saturate(1.2);
}

.careers-value-card h3 {
  color: #293247;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.28;
  margin-bottom: 18px;
}

.careers-value-card p {
  margin: 0;
}

.careers-offer-sec .heading {
  margin-bottom: 90px;
}

.careers-offer-sec .row {
  gap: 100px 0;
}

.careers-offer-card {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: 300px;
  padding: 72px 30px 38px;
  text-align: center;
  background: #fff;
  border-radius: 32px 32px 88px 32px;
  box-shadow: 1px 6px 14px rgba(40, 55, 95, 0.1);
  transition: 0.3s ease;
}

.careers-offer-card strong {
  position: absolute;
  left: -10px;
  top: -78px;
  z-index: -1;
  color: transparent;
  -webkit-text-stroke: 2px rgba(47, 50, 147, 0.12);
  font-size: 145px;
  font-weight: 800;
  line-height: 1;
}

.careers-offer-card .careers-card-icon {
  left: 0;
  top: auto;
  bottom: 32px;
}

.careers-offer-card h3 {
  color: #08083b;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.25;
  margin-bottom: 22px;
}

.careers-offer-card p {
  color: #7d8490;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.55;
  margin: 0;
}

.careers-openings-sec .careers-why-sec .heading {
  margin-bottom: 32px;
}

.career-role-card {
  height: 100%;
  padding: 28px;
  background: #fff;
  border-radius: 28px 28px 88px 28px;
  box-shadow: 0 14px 34px rgba(40, 55, 95, 0.08);
  transition: 0.3s ease;
}

.career-role-top {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 28px;
}

.career-role-top i {
  color: #123d70;
  font-size: 40px;
}

.career-role-top h3 {
  color: #293247;
  font-size: 19px;
  font-weight: 700;
  margin: 0;
}

.career-location-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  padding: 10px 15px;
  background: #f3f5ff;
  border-radius: 12px;
}

.career-location-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #293247;
  font-size: 15px;
  font-weight: 700;
}

.career-location-row select {
  flex: 1;
  min-width: 150px;
  height: 43px;
  color: #293247;
  background: #fff;
  border: 1px solid rgba(47, 50, 147, 0.1);
  border-radius: 8px;
  padding: 0 34px 0 12px;
  font-size: 15px;
  font-weight: 700;
  outline: none;
  cursor: pointer;
}

.career-role-card p {
  margin-bottom: 30px;
}

.career-role-card a {
  padding: 10px 30px;
  color: #2F3293;
  border: 1px solid #2F3293;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
  transition: all 0.3s;
}

.career-role-card a:hover {
  color: #fff;
  background: #2F3293;
}

.career-apply-bx {
  padding: 44px;
  background: #28375F;
  border-radius: 28px 28px 90px 28px;
  box-shadow: 0 18px 45px rgba(18, 61, 112, 0.14);
}

.career-apply-bx h2 {
  color: #fff;
  font-size: 36px;
  font-weight: 800;
  margin-bottom: 12px;
}

.career-apply-bx p {
  color: rgba(255, 255, 255, 0.88);
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
}

.career-apply-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 14px;
}

.career-apply-actions .cmn-btn {
  background: #fff;
  color: #28375F;
}

.career-call-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 30px;
  padding: 12px 18px;
  font-weight: 800;
}

.career-call-btn:hover {
  color: #fff;
  border-color: #fff;
}

/* ========== Careers Page End ========== */


/* ========== News Media Page ========== */

.news-media-sec {
  padding: 60px 0;
  background: linear-gradient(180deg, #fff 0%, #f7f9ff 100%);
}

.news-media-grid .row {
  display: block;
  column-count: 3;
  column-gap: 24px;
  margin-left: 0;
  margin-right: 0;
}

.news-media-grid .row > [class*="col-"] {
  display: inline-block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-top: 0;
  margin-bottom: 24px;
  break-inside: avoid;
}

.news-media-card {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(47, 50, 147, 0.12);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(18, 61, 112, 0.08);
  transition: 0.3s ease;
  padding: 10px;
}

.news-media-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 46px rgba(18, 61, 112, 0.12);
}

.news-media-card img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  border-radius: 12px;
  transition: 0.35s ease;
}

.news-media-card-large img {
  height: auto;
}

.news-media-card-tall img {
  height: auto;
}

.news-media-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(8, 8, 59, 0.24));
  opacity: 0;
  pointer-events: none;
  transition: 0.3s ease;
}

.news-media-card:hover::after {
  opacity: 1;
}

.news-media-card:hover img {
  transform: none;
}

/* ========== News Media Page End ========== */


/* Anugraha tagline highlight - added per client request */
.anugraha-tagline,
span.anugraha-tagline {
  color: #ffc94d;
  font-style: italic;
  font-weight: 700 !important;
  letter-spacing: 0.4px;
}

/* NABH logo - header top strip & footer */
.nabh-badge { position: relative; flex: 0 0 auto; }
.top-strip-inr .nabh-badge img {
    width: 45px;
    height: 45px;
    border-radius: 50%;
}
.nabh-badge::after { content: ""; position: absolute; right: -24px; top: 50%; width: 1px; height: 24px; background-color: rgba(255, 255, 255, 0.45); transform: translateY(-50%); }
.footer-logo { display: flex; align-items: center; gap: 14px; }
.footer-logo .footer-nabh { width: 70px; flex-shrink: 0; }

/* Empanelments page */
.empanelment-sec { background: linear-gradient(180deg, #f5f8ff 0%, #ffffff 100%); }
.empanelment-sec .media-tab-panel { margin-top: 45px; }
.empanelment-card { display: flex; align-items: center; justify-content: center; height: 150px; padding: 22px; background-color: #fff; border: 0; border-radius: 18px; box-shadow: 0 10px 30px rgba(40, 55, 95, .08); transition: transform .3s ease, box-shadow .3s ease; }
.empanelment-card:hover { box-shadow: 0 18px 40px rgba(47, 50, 147, .18); transform: translateY(-6px); }
.empanelment-card img { width: 100%; height: 100%; object-fit: contain; transition: transform .3s ease; }
.empanelment-card:hover img { transform: scale(1.08); }

/* LASIK popup */
.lasik-popup { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 20px; visibility: hidden; transition: visibility 0s linear .5s; }
.lasik-popup.active { visibility: visible; transition-delay: 0s; }
.lasik-popup-overlay { position: absolute; inset: 0; background-color: rgba(15, 25, 50, 0); -webkit-backdrop-filter: blur(0); backdrop-filter: blur(0); transition: background-color .5s ease, -webkit-backdrop-filter .5s ease, backdrop-filter .5s ease; }
.lasik-popup.active .lasik-popup-overlay { background-color: rgba(15, 25, 50, .55); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.lasik-popup-box { position: relative; width: 100%; max-width: 800px; opacity: 0; transform: translateY(40px) scale(.9); transition: transform .5s cubic-bezier(.22, 1, .36, 1), opacity .4s ease; }
.lasik-popup.active .lasik-popup-box { opacity: 1; transform: translateY(0) scale(1); transition-delay: .1s; }
.lasik-popup-box img { width: 100%; max-height: 88vh; object-fit: contain; border-radius: 16px; box-shadow: 0 25px 60px rgba(0, 0, 0, .4); }
.lasik-popup-btn { position: absolute; top: -14px; right: -14px; z-index: 2; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; padding: 0; color: #28375F; font-size: 16px; background-color: #fff; border: 0; border-radius: 50%; box-shadow: 0 4px 14px rgba(0, 0, 0, .3); cursor: pointer; opacity: 0; transform: scale(0) rotate(-90deg); transition: transform .5s cubic-bezier(.34, 1.56, .64, 1) .5s, opacity .3s ease .5s; }
.lasik-popup.active .lasik-popup-btn { opacity: 1; transform: scale(1) rotate(0); }
.lasik-popup-btn:hover { transform: scale(1.1) rotate(90deg) !important; transition-delay: 0s; }


section.doctor-detail-sec.aos-init.aos-animate ul {
    padding-left: 2rem;
}

section.doctor-detail-sec.aos-init.aos-animate ul li {
    list-style-type: disc;
}

.doctor-detail-sec h3, .doctor-detail-sec h4 {
    margin-top: 30px;
}

.about-values-content.doctor-clinical-content ol {
    padding-left: 3rem;
}

.about-values-content.doctor-clinical-content ol li {
    list-style: decimal;
}

.about-values-content.doctor-clinical-content ul {
    padding-left: 3rem;
}

.about-values-content.doctor-clinical-content ul li {
    list-style: disc;
}
/* Compatibility for the currently cached doctor template markup. */
.doctor-clinical-experience-sec > .container{display:grid;grid-template-columns:minmax(250px,34%) minmax(0,1fr);gap:0;overflow:hidden;border-radius:24px;background:#273d5a;box-shadow:0 18px 46px rgba(28,49,78,.14)}
.doctor-clinical-experience-sec > .container > .about-values-head{grid-column:1/-1;padding:0 0 28px;background:#fff}
.doctor-clinical-experience-sec > .container > .doctor-clinical-tabs{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:10px;padding:18px;background:linear-gradient(150deg,#263c59 0%,#304e78 100%)}
.doctor-clinical-experience-sec > .container > .doctor-clinical-content{grid-column:2;grid-row:2;min-width:0;padding:38px 42px;color:#27313d;background:#f7f9fc}
@media (max-width:767px){.doctor-clinical-experience-sec > .container{display:block;border-radius:18px}.doctor-clinical-experience-sec > .container > .about-values-head{padding-bottom:20px}.doctor-clinical-experience-sec > .container > .doctor-clinical-tabs{flex-direction:row;overflow-x:auto;padding:12px}.doctor-clinical-experience-sec > .container > .doctor-clinical-content{padding:26px 22px}}

/* Clinical Experience: compact click-to-open rows. */
.doctor-clinical-experience-sec > .container > .doctor-clinical-accordion{display:flex;flex-direction:column;gap:8px;width:100%;}
.doctor-clinical-item{overflow:hidden;border:1px solid #e7ebf1;border-radius:18px;background:#f4f6f8;transition:background .25s ease,box-shadow .25s ease,transform .25s ease;}
.doctor-clinical-item.is-open{background:linear-gradient(100deg,#244e88 0%,#1f6fe9 100%);border-color:#1f6fe9;box-shadow:0 12px 28px rgba(31,111,233,.18);transform:translateY(-1px);}
.doctor-clinical-trigger{display:grid;grid-template-columns:38px minmax(230px,34%) minmax(0,1fr) 46px;align-items:center;gap:16px;width:100%;min-height:68px;padding:12px 16px 12px 18px;border:0;background:transparent;color:#202832;text-align:left;cursor:pointer;font:inherit;}
.doctor-clinical-item.is-open .doctor-clinical-trigger{color:#fff;}
.doctor-clinical-tab-number{font-size:12px;font-weight:800;letter-spacing:.08em;color:#6b7787;}
.doctor-clinical-item.is-open .doctor-clinical-tab-number{color:rgba(255,255,255,.7);}
.doctor-clinical-trigger-title{font-size:16px;font-weight:700;line-height:1.25;}
.doctor-clinical-trigger-summary{overflow:hidden;color:#929ba8;font-size:12px;line-height:1.35;}
.doctor-clinical-item.is-open .doctor-clinical-trigger-summary{color:rgba(255,255,255,.76);}
.doctor-clinical-trigger-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1267e8;color:#fff;justify-self:end;transition:transform .25s ease,background .25s ease,color .25s ease;}
.doctor-clinical-item.is-open .doctor-clinical-trigger-icon{background:#fff;color:#2b5d9c;transform:rotate(90deg);}
.doctor-clinical-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease;}
.doctor-clinical-item.is-open .doctor-clinical-panel{grid-template-rows:1fr;}
.doctor-clinical-panel-inner{min-height:0;overflow:hidden;padding:0 24px;color:#fff;font-size:16px;line-height:1.65;}
.doctor-clinical-item.is-open .doctor-clinical-panel-inner{padding:0 24px 24px 72px;}
.doctor-clinical-panel-inner ol,.doctor-clinical-panel-inner ul{margin:0;padding-left:1.25em;}
.doctor-clinical-panel-inner p:last-child{margin-bottom:0;}
@media (max-width:767px){
 .doctor-clinical-trigger{grid-template-columns:28px minmax(0,1fr) 38px;gap:10px;min-height:64px;padding:12px 12px;}
 .doctor-clinical-trigger-summary{display:none;}
 .doctor-clinical-trigger-title{font-size:14px;}
 .doctor-clinical-item.is-open .doctor-clinical-panel-inner{padding:0 18px 20px 50px;font-size:15px;}
}

/* Keep every accordion row full width inside the clinical section. */
.doctor-clinical-experience-sec > .container {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    overflow: hidden;
    border-radius: 24px;
    background: #273d5a;
}
.doctor-clinical-experience-sec > .container > .about-values-head {
    width: 100%;
    padding: 30px 36px 28px;
    background: #fff;
}
.doctor-clinical-experience-sec > .container > .doctor-clinical-accordion {
    width: 100%;
    padding: 18px;
    background: #273d5a;
}
.doctor-clinical-item,
.doctor-clinical-trigger,
.doctor-clinical-panel,
.doctor-clinical-panel-inner {
    width: 100%;
    max-width: none;
}
.doctor-clinical-trigger {
    grid-template-columns: 44px minmax(0, 1fr) 46px;
}
.doctor-clinical-trigger-title { min-width: 0; width: 100%; }
.doctor-clinical-panel-inner p { margin: 0 0 14px; }
.doctor-clinical-panel-inner ol,
.doctor-clinical-panel-inner ul {
    display: block;
    margin: 0 0 16px;
    padding-left: 1.5em;
}
.doctor-clinical-panel-inner ol { list-style: decimal; }
.doctor-clinical-panel-inner ul { list-style: disc; }
.doctor-clinical-panel-inner li {
    display: list-item;
    margin: 0 0 8px;
    padding-left: 4px;
}
.doctor-clinical-panel-inner li:last-child { margin-bottom: 0; }

/* Clinical Experience section colours */
.doctor-clinical-experience-sec > .container,
.doctor-clinical-experience-sec > .container > .doctor-clinical-tabs,
.doctor-clinical-experience-sec > .container > .doctor-clinical-accordion {
    background: #fff;
}
.doctor-clinical-experience-sec .doctor-clinical-trigger-title,
.doctor-clinical-experience-sec .doctor-clinical-trigger-summary,
.doctor-clinical-experience-sec .doctor-clinical-panel-inner,
.doctor-clinical-experience-sec .doctor-clinical-panel-inner p,
.doctor-clinical-experience-sec .doctor-clinical-panel-inner li {
    color: #333593;
}
}
@media (max-width: 767px) {
    .doctor-clinical-experience-sec > .container { border-radius: 18px; }
    .doctor-clinical-experience-sec > .container > .about-values-head { padding: 24px 20px 20px; }
    .doctor-clinical-experience-sec > .container > .doctor-clinical-accordion { padding: 12px; }
    .doctor-clinical-trigger { grid-template-columns: 28px minmax(0, 1fr) 38px; }
}

/* Header search and theme-matched search results */
.site-search-trigger{display:inline-grid;place-items:center;width:48px;height:48px;margin-left:10px;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:transparent;color:#fff;cursor:pointer;font-size:18px;transition:background .2s ease,color .2s ease,transform .2s ease}
.site-search-trigger:hover,.site-search-trigger:focus-visible{background:#fff;color:#273d5a;transform:translateY(-1px);outline:none}
.site-search-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:start center;padding:clamp(90px,15vh,170px) 20px 30px;visibility:hidden;opacity:0;transition:opacity .22s ease,visibility .22s ease}
.site-search-modal.is-open{visibility:visible;opacity:1}
.site-search-modal-backdrop{position:absolute;inset:0;background:rgba(15,28,48,.72);backdrop-filter:blur(5px)}
.site-search-dialog{position:relative;width:min(720px,100%);padding:42px 46px 46px;border-radius:24px;background:#fff;box-shadow:0 24px 80px rgba(9,25,50,.28);transform:translateY(-14px);transition:transform .22s ease}
.site-search-modal.is-open .site-search-dialog{transform:translateY(0)}
.site-search-close{position:absolute;top:16px;right:18px;width:38px;height:38px;border:0;border-radius:50%;background:#edf2f8;color:#273d5a;cursor:pointer;font-size:17px}
.site-search-eyebrow{margin:0 0 8px;color:#333593;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.site-search-dialog h2{margin:0 0 24px;color:#273d5a;font-size:clamp(27px,4vw,42px);line-height:1.1}
.site-search-form{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 20px;border:2px solid #dce4ef;border-radius:14px;background:#f8fafc;transition:border-color .2s ease,box-shadow .2s ease}
.site-search-form:focus-within{border-color:#333593;box-shadow:0 0 0 4px rgba(51,53,147,.1)}
.site-search-form input{width:100%;min-width:0;border:0;background:transparent;color:#273d5a;font:inherit;font-size:16px;outline:0}
.site-search-form button{display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:10px;background:#333593;color:#fff;cursor:pointer;font-size:17px}
body.search-modal-open{overflow:hidden}
.site-search-results-hero{padding:76px 0 68px;background:linear-gradient(135deg,#273d5a 0%,#333593 100%);color:#fff}
.site-search-results-hero .site-search-eyebrow{color:#dbe7ff}
.site-search-results-hero h1{margin:0 0 12px;font-size:clamp(36px,5vw,64px);line-height:1.05}
.site-search-results-hero p:last-child{margin:0;color:rgba(255,255,255,.82);font-size:17px}
.site-search-results-list{padding:76px 0 100px;background:#f6f8fb}
.site-search-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.site-search-card{overflow:hidden;border:1px solid #e4eaf2;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(31,53,82,.08);transition:transform .2s ease,box-shadow .2s ease}
.site-search-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(31,53,82,.14)}
.site-search-card-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#e9eef5}
.site-search-card-image img{display:block;width:100%;height:100%;object-fit:cover}
.site-search-card-content{padding:24px}
.site-search-card-type{color:#333593;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.site-search-card h2{margin:9px 0 10px;color:#273d5a;font-size:22px;line-height:1.2}
.site-search-card h2 a{color:inherit;text-decoration:none}
.site-search-card p{margin:0 0 18px;color:#647084;font-size:14px;line-height:1.65}
.site-search-card-link{color:#333593;font-weight:700;text-decoration:none}
.site-search-card-link i{margin-left:7px;transition:transform .2s ease}
.site-search-card-link:hover i{transform:translateX(4px)}
.site-search-pagination{margin-top:42px;text-align:center}
.site-search-pagination ul{display:flex;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}
.site-search-pagination a,.site-search-pagination span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:8px;background:#fff;color:#333593;text-decoration:none}
.site-search-pagination .current{background:#333593;color:#fff}
.site-search-empty{padding:70px 25px;text-align:center;border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(31,53,82,.08)}
.site-search-empty>i{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:#e9edff;color:#333593;font-size:24px}
.site-search-empty h2{margin:0 0 10px;color:#273d5a;font-size:30px}
.site-search-empty p{margin:0 0 24px;color:#647084}
.site-search-again{padding:13px 23px;border:0;border-radius:9px;background:#333593;color:#fff;font:inherit;font-weight:700;cursor:pointer}
@media (max-width:991px){.site-search-trigger{width:42px;height:42px;margin-left:8px}.site-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:575px){.site-search-dialog{padding:36px 20px 24px;border-radius:18px}.site-search-results-hero{padding:55px 0 48px}.site-search-results-list{padding:48px 0 70px}.site-search-grid{grid-template-columns:1fr}.site-search-card-content{padding:20px}}
/* Thank-you page */
.thank-you-page{background:#f6f8fb}
.thank-you-hero{min-height:calc(100vh - 220px);display:grid;place-items:center;padding:80px 0 110px;background:linear-gradient(135deg,#f6f8fb 0%,#fff 58%,#e8edff 100%)}
.thank-you-card{max-width:720px;margin:0 auto;padding:58px 52px;text-align:center;border:1px solid #e1e8f2;border-radius:28px;background:#fff;box-shadow:0 22px 65px rgba(31,53,82,.12)}
.thank-you-icon{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 22px;border-radius:50%;background:#333593;color:#fff;font-size:30px;box-shadow:0 10px 24px rgba(51,53,147,.22)}
.thank-you-eyebrow{margin:0 0 8px;color:#333593;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.thank-you-card h1{margin:0 0 14px;color:#273d5a;font-size:clamp(38px,6vw,64px);line-height:1.05}
.thank-you-message{max-width:540px;margin:0 auto 30px;color:#647084;font-size:17px;line-height:1.7}
.thank-you-actions{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}
.thank-you-home{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.thank-you-home i{transition:transform .2s ease}
.thank-you-home:hover i{transform:translateX(4px)}
.thank-you-contact{color:#333593;font-weight:700;text-decoration:none}
@media (max-width:575px){.thank-you-hero{min-height:calc(100vh - 160px);padding:55px 18px 75px}.thank-you-card{padding:40px 22px;border-radius:20px}.thank-you-message{font-size:15px}}
