/* =====================
      SECTION: 
      ====================== */

.section-title span {
  font-weight: 500;
  text-transform: uppercase;
  color: var(--primary-color);
  letter-spacing: 2px;
  font-weight: 800;
  display: inline-block;
  margin-bottom: 20px;
  position: relative;
  padding: 10px 30px 10px 30px;
  background: linear-gradient(to right,
      rgba(255, 255, 255, 0),
      rgb(var(--accent-color-rgb)));
  border-radius: 0 30px 30px 0;
}

/* =====================
      SECTION: 
      ====================== */

.zig-zag-line {
  --a: 130deg;
  --s: 20px;
  --b: 2px;

  width: 70%;
  height: calc(var(--b) + var(--s) / (2 * tan(var(--a) / 2)));
  margin: 1rem;
  background: var(--secondary-color);

  --_g: var(--s) repeat-x conic-gradient(from calc(var(--a) / -2) at bottom,
      #0000,
      #000 1deg calc(var(--a) - 1deg),
      #0000 var(--a));
  mask: 50% calc(-1 * var(--b)) / var(--_g) exclude, 50% / var(--_g);
  -webkit-mask: 50% calc(-1 * var(--b)) / var(--_g) exclude, 50% / var(--_g);

  animation: zigzag-move 1s linear infinite;
}

@keyframes zigzag-move {
  from {
    -webkit-mask-position-x: 0;
  }

  to {
    -webkit-mask-position-x: var(--s);
  }
}

/* =====================
    SECTION: EMERGENCY
    ====================== */

.emergency {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 11111;
}

.emergency a {
  padding: 1rem 1rem 1rem 2.5rem;
  color: var(--bs-light);
  background: red;
  border-radius: 50px 0 0 50px;
}

/* =====================
    SECTION: HERO
    ====================== */
.hero {
  position: relative;
  z-index: 0;
}

.carousel-inner {
  position: relative;
  z-index: 1;
}

/* .carousel-inner::before {
    position: absolute;
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(to right, rgba(var(--primary-color-rgb), 1) 50%, transparent 100%);
    z-index: 2;
  } */

.hero .carousel-item {
  /* min-height: 75svh;
    display: grid; */

  /* &::before {
      content: "";
      position: absolute;
      inset: 0;
      --background-ol: linear-gradient(
        to bottom,
        #031313,
        rgb(40 11 114 / 50%)
      );
      background: var(--background-ol);
    } */

  & img {
    height: 100%;
    object-fit: cover;
  }

  & .carousel-caption {
    bottom: 50%;
    transform: translateY(50%);

    & .text-banner {
      transform: translateY(-175%);
      line-height: 1.15;
      /* text-shadow: 2px 2px 6px var(--bs-dark); */
      text-shadow: 2px 3px 2px var(--bs-dark);

      overflow: hidden;
      /* color: var(--primary-color); */
      color: var(--bs-light);

      & span {
        color: var(--accent-color);
      }
    }
  }

  .carousel-caption {
    /* width: 60%;
      left: 10%;
      text-align: start;
      overflow: hidden; */
    width: 80%;
    left: 10%;
    text-align: center;
    overflow: hidden;
  }
}

& .carousel-item.active .text-banner {
  animation: resetCaptionTransform 1000ms 150ms ease forwards;
}

@keyframes resetCaptionTransform {
  100% {
    transform: none;
  }
}

.hero .carousel-inner .blurry-light {
  position: absolute;
  width: 240px;
  aspect-ratio: 1;
  z-index: 1;
  border-radius: 50%;
  filter: blur(150px);

  &.topStart {
    background: var(--primary-color);
    top: 0;
    left: 0;
    mix-blend-mode: luminosity;
  }
}

.language select {
  padding: 6px;
  border: none;
  width: 100%;
}

.hero .scroll-down {
  position: absolute;
  color: var(--bs-light);
  bottom: 1rem;
  left: 50%;
  z-index: 1;
  font-size: 2rem;
  animation: scrollDown 2s infinite;
}

@keyframes scrollDown {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}


/* =====================
    SECTION: MISSION_VISION
    ====================== */
.mission_vision {
  position: relative;
  z-index: 0;
}

/* .mission_vision::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: rgba(var(--primary-color-rgb), 0.1);
    z-index: -1;
  }  */
.vision_image {
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(237deg) brightness(106%) contrast(104%);
}

.vision_image.vision_image1 {
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(237deg) brightness(106%) contrast(104%);
}

.vision_image::before {
  content: "";
  position: absolute;
  background-color: #4b56b3;
  height: 65px;
  width: 65px;
  border-radius: 50%;
  top: 0%;
  left: 50px;
  opacity: 0.1;
}

.vision_image {
  flex-shrink: 0;
}

.history {
  border: 1px solid #dde5dc;
  /* border-top: 25px solid #dde5dc;
    border-bottom: 25px solid #dde5dc; */
  box-shadow: 0px 0px 30px 0 rgba(255, 255, 255, 0.3);
  background-color: #fff;
}

.history_det {
  line-height: 2rem;
  color: #7c7a7a;
}

/* =====================
    SECTION: ABOUT
    ====================== */

.about__section {
  position: relative;
  z-index: 0;
}

.about__section img {
  border-radius: 1rem;
}

/* =====================
    SECTION: COUNTER
    ====================== */

.counter {
  position: relative;
  background: url("../images/qlink2.webp");
  background-position: center;
  background-size: cover;
  border-radius: 1rem;
  box-shadow: 0px 0px 30px 0 rgba(255, 255, 255, 0.6);
  padding: 3rem 0;
  margin-bottom: -125px;
  margin-top: 30px;
  z-index: 3;
}

.counter__info {
  text-align: center;
  color: var(--bs-white);
}

.counter .counter__icon {
  width: 74px;
  height: 74px;
  background-color: var(--bs-light);
  border-radius: 50%;
  border-left: 5px solid #4ca97f;
  border-right: 5px solid #4ca97f;
  margin-bottom: 16px;
  margin-left: auto;
  margin-right: auto;
  transition: all 0.4s ease;
  display: flex;
}

.counter .counter__icon img {
  display: inline-block;
  margin: auto;
  width: 37px;
  filter: invert(32%) sepia(28%) saturate(1448%) hue-rotate(120deg) brightness(93%) contrast(105%);
}

.counter_nmber {
  font-size: var(--fs-small-banner);
  font-family: var(--heading-font);
  font-weight: 700;
  /* text-shadow: 2px 2px 5px #646161; */
}

.counter_title {
  font-size: var(--fs-caption);
  font-family: var(--heading-font);
  font-weight: 600;
  line-height: 22px;
}

/* =====================
    SECTION: 
    ====================== */

.patient__testimonials {
  background-color: transparent;
  background-image: linear-gradient(180deg,
      var(--primary-color) 65%,
      transparent 65%);
}

.testi_img {
  height: 100px;
  width: 100px;
  margin: auto;
}

.testi_img img {
  border-radius: 50%;
}

/* .patient__info {
    padding: 2rem;
    background: #e8edf0;
    position: relative;
    border-radius: 1rem;
  }

  .patient__image img {
    width: 70px;
    margin: auto;
    border-radius: 50%; 
  }

  .patient__image {
    position: relative;
  }

  .patient__image a {
    position: absolute;
    z-index: 1;
    bottom: 4%;
    left: 5%;
  }

  .quatation {
    position: absolute;
    right: 20px;
    bottom: 15px;
    width: 30px;
    filter: invert(17%) sepia(79%) saturate(1335%) hue-rotate(202deg) brightness(95%) contrast(99%);
  } */

/* =====================
    SECTION: SPECALITY & SEVICE
    ====================== */

.spec_serv {
  position: relative;
}

.spec_serv::before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(rgb(251 251 251 / 14%), rgba(0, 0, 0, 0.5)),
    url("../images/bg5.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.2;
  z-index: -1;
}

.servc-content {
  border-radius: 5px;
  background-color: #ffffffad;
  box-shadow: 0 0 15px rgb(225 228 231 / 24%);
}

.servc-content .text-heading-2 {
  line-height: 30px;
}

.btns {
  font-size: 13px;
  padding: 5px 7px;
}

/* =====================
    SECTION: TEAM
    ====================== */

.our__team {
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.profile__info {
  padding: 1.5rem;
  /* border: 1px solid rgba(46, 39, 157, 0.1); */
  border: 1px solid rgba(var(--primary-color-rgb), 0.1);
  text-align: center;
  height: 100% !important;
  background: #fff;
  border-radius: 1rem;
}

.profile__image {
  margin-bottom: 0.5rem;
  position: relative;
  z-index: 1;
  /* background: aliceblue; */
  background: rgba(var(--primary-color-rgb), 0.1);
}

.profile__image::before {
  position: absolute;
  content: "";
  inset: 0;
  z-index: 1;
  background: linear-gradient(to top, #ffffff, 10%, transparent 19%);
}

.profile__name {
  font-family: var(--heading-font);
  font-weight: 800;
  color: var(--secondary-color);
  line-height: 1.2;
  margin-bottom: 0.4rem;
}

.profile__desg {
  font-family: var(--heading-font);
  font-weight: 500;
  font-size: var(--fs-small);
}

/* =====================
    SECTION: CTA
    ====================== */

.cta {
  /* background: var(--grad-alt);
    background: radial-gradient(
      circle farthest-corner at -6.3% 49.8%,
      rgba(var(--accent-color-rgb), 1) 0.1%,
      rgba(var(--secondary-color-rgb), 1) 8.5%,
      rgba(var(--primary-color-rgb), 1) 100.2%
    ); */
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("../images/counter3-bg.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
/* 
.btn {
  background: transparent !important;
  border: 1px solid #fff;
} */

/* =====================
    SECTION: VIDEO
    ====================== */
.video-container {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 aspect ratio (9 / 16 = 0.5625) */
  overflow: hidden;
  background: #000;
  /* optional: black background behind video */
  border-radius: 0;
  /* optional: remove border-radius if any */
  margin: 0 auto;
  border-radius: 1rem;
  overflow: hidden;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* =====================
    SECTION: GALLERY
    ====================== */
.gallery__section img {
  border-radius: 0.7rem;
}

.gallery-thumbnail {
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-auto-rows: 200px;
  grid-auto-flow: dense;
  grid-gap: 20px;
}

.gallery-thumbnail :is(img, video) {
  width: 100%;
  height: 100%;
  overflow: hidden;
  object-fit: cover;
  object-position: center 35%;
  transition: all 0.5s ease;
  border-radius: 0.5rem;
}

/* =====================
    SECTION: SERVICES
    ====================== */
.speciality__section {
  position: relative;
  padding: 200px 0 60px 0;
  background: url("../images/bg/bg3.jpg");
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  /* z-index: 1; */
}

/* .speciality__section::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: #fff;
    opacity: 0.8;
    z-index: -2;
  } */

.service__section {
  background-image: url(../images/bg/bg1.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.services__content {
  border-radius: 25px;
  padding: 30px;
  z-index: 1;
  filter: drop-shadow(0 20px 50px rgba(3, 27, 78, 0.02));
  height: 100%;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}

.services__content {
  position: relative;
}

.services__content .icon__head {
  margin-bottom: auto;
}

.services__content .icon-bx {
  width: 60px;
  height: 60px;
  display: block;
  margin-bottom: 30px;
}

.services__content .icon-bx {
  position: relative;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.services__content .icon-cell img {
  width: 60px;
}

.services__content .icon-cell {
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.services__content .icon-bx svg {
  width: 100%;
  height: 100%;
}

.services__content .icon-bg img {
  position: absolute;
  right: 5px;
  top: 5px;
  width: 140px;
  width: 100px;
  opacity: 0.025;
}

.services__content:hover .icon-bg img {
  filter: invert(100%) sepia(0%) saturate(7495%) hue-rotate(298deg) brightness(101%) contrast(100%);
  opacity: 0.1;
}

.services__content .icon-bg svg {
  width: 100%;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.icon-content {
  overflow: hidden;
}

.icon-content .text-heading-2 {
  color: var(--primary-color);
}

.services__content:hover .icon-content .text-heading-2 {
  color: var(--bs-light);
}

.services__content .icon-bx-footer {
  position: relative;
  /* padding-top: 20px;
    margin-top: 20px; */
  margin-right: 50px;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.services__content .icon-bx-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-image: linear-gradient(to right,
      rgba(86, 101, 147, 0.3) 50%,
      rgba(255, 255, 255, 0) 0);
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
  background-size: 10px 1px;
  background-repeat: repeat-x;
}

.services__content .btn-square {
  box-shadow: 0 20px 50px rgba(3, 27, 78, 0.1);
  position: absolute;
  right: -80px;
  bottom: -30px;
  font-size: 20px;
}

/* .services__content:after {
    content: "";
    background: #fff;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    mask-image: url(../images/bg/service.svg);
    mask-position: right bottom;
    border-radius: 25px 25px 0 25px;
    -webkit-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
  } */

.btn-square {
  height: 48px;
  width: 48px;
  min-width: 48px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.services__content:hover:after,
.services__content:focus-within .services__content:hover:after {
  background: var(--primary-color);
}

.services__content:hover .icon-cell img {
  filter: invert(100%) sepia(0%) saturate(7495%) hue-rotate(298deg) brightness(101%) contrast(100%);
}

.services__content:hover .icon-content,
.services__content:hover .icon-bx-footer {
  color: var(--bs-light) !important;
}

.services__content:after {
  content: "";
  background: #fff;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  mask-image: url(../images/bg/service.svg);
  /* box-shadow: 0 4px 10px rgba(0, 0, 0, 0.7); */
  mask-position: right bottom;
  border-radius: 25px 25px 0 25px;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
}

.services__content:hover .btn-square i {
  animation: toRightFromLeft 0.5s forwards;
}

.service__section .overlay {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-top: 30px;
}

.cs_iconbox_icon {
  color: var(--primary-color);
}

/* =====================
    SECTION: TESTIMONIALS
    ====================== */

/* .testimonial__section {
    background: url("../images/gallerybg.webp");
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    z-index: 0;
  } */

.testimonial_content {
  background: linear-gradient(180deg,
      rgba(255, 255, 255, 1) 50%,
      rgba(255, 255, 255, 0) 100%);
  position: relative;
  border-radius: 1rem;
  box-shadow: 0px 0px 30px 0 rgb(0 20 9 / 30%);
}

.testimonial_content::before {
  content: "\F6B0";
  position: absolute;
  font-family: bootstrap-icons;
  top: -9px;
  left: 3px;
  font-size: 50px;
  height: 55px;
  width: 50px;
  border-radius: 15px 0 0 0;
  border: 1px solid var(--primary-color);
  color: var(--primary-color);
}

/* =====================
  SECTION: inner__page
  ====================== */

.inner__page {
  background: url(../images/bg/bg-2.webp);
  background-repeat: repeat;
}

.inner__bg {
  background: url(../images/bg/inner__bg.webp);
  background-repeat: repeat;
}

.text__background {
  display: inline-block;
  color: transparent;
  /* background: linear-gradient(rgba(var(--primary-color-rgb), 1), rgba(var(--accent-color-rgb), 1)); */
  background: linear-gradient(rgba(36, 11, 142, 1), rgba(99, 11, 142, 1));
  background: linear-gradient(rgb(255 0 0), rgb(126 0 187));
  background-clip: text;
}

/* =====================
  PAGE: MARKETING & PROMOTIONS
  ====================== */

.box__info {
  padding: 1.5rem;
  background: #fff;
  border-radius: 0.7rem;
  text-align: center;
  height: 100%;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.box__img {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  display: flex;
  border-radius: 50%;
  background: var(--primary-color);
  margin: auto;
  margin-bottom: 1rem;
}

.box__img img {
  width: 2.5rem;
  margin: auto;
  text-align: center;
}

/* =====================
  PAGE: MARKETING & PROMOTIONS
  ====================== */
.marketing__promotions {
  gap: 1rem;
  border-radius: 1rem;
  height: 100%;
}

.marketing__promotions p {
  margin-bottom: 0;
}

.marketing__promotions__img {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  display: flex;
  border-radius: 0.6rem;
}

.marketing__promotions__img img {
  width: 40px;
  margin: auto;
  text-align: center;
}

.marketing__promotions.facilities {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.marketing__promotions.facilities .marketing__promotions__img {
  background-image: radial-gradient(circle farthest-corner at -5.6% -6.8%,
      rgba(103, 49, 145, 1) 37.3%,
      rgba(50, 0, 129, 1) 73.5%);
}

.marketing__promotions.facilities .marketing__promotions__img.two {
  background-image: radial-gradient(circle farthest-corner at 10% 20%,
      rgba(214, 40, 40, 1) 0%,
      rgba(255, 195, 0, 1) 90%);
}

.marketing__promotions.facilities .marketing__promotions__img.three {
  background-image: linear-gradient(75.1deg,
      rgba(34, 126, 34, 1) 6%,
      rgba(99, 226, 17, 1) 84.3%);
}

.marketing__promotions.facilities .marketing__promotions__img.four {
  background-image: radial-gradient(circle farthest-corner at 10% 20%,
      rgba(0, 105, 148, 1) 15.6%,
      rgba(0, 163, 217, 1) 51.9%,
      rgba(0, 194, 226, 1) 81%);
}

.marketing__promotions.facilities .marketing__promotions__img.five {
  background-image: radial-gradient(circle farthest-corner at 6.3% 21.8%,
      rgba(236, 6, 117, 1) 0%,
      rgba(13, 32, 67, 1) 90%);
}

.marketing__promotions.facilities .marketing__promotions__img.six {
  background-image: radial-gradient(circle farthest-corner at 6.3% 21.8%,
      rgb(21, 136, 189) 0%,
      rgba(13, 32, 67, 1) 90%);
}

.marketing__promotions.facilities .marketing__promotions__img.seven {
  background-image: radial-gradient(circle farthest-corner at 6.3% 21.8%,
      rgb(176, 233, 19) 0%,
      rgba(13, 32, 67, 1) 90%);
}

.specialties .marketing__promotions {
  padding: 0;
  height: auto;
}

.specialties .marketing__promotions.facilities {
  box-shadow: none;
}

.specialties .main__box {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  border-radius: 1rem;
  height: 100%;
  background: #fff;
  justify-content: center;
  align-items: center;

}

/* =====================
    SECTION: DOCTORS
    ====================== */

.table>:not(caption)>*>* {
  background-color: transparent !important;
  color: #fff;
  border: none;
}

.doc_img {
  position: relative;
}

.element {
  position: absolute;
  height: 100%;
  width: 100%;
  top: -10px;
  left: 0;
  z-index: -1;
  padding: 20px;
  animation: spin 8s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* =====================
        SECTION: TIMELINE
        ====================== */

/* Timeline Container */
.timeline {
  margin: 20px auto;
  padding: 20px;
}

/* Outer Layer with the timeline border */
.outer {
  border-left: 2px solid #333;
}

/* Card container */
.card1 {
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;
  border-radius: 8px;
}

/* Information about the timeline */
.info {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Title of the card */
.title {
  color: var(--primary-color);
  position: relative;
}

/* Timeline dot  */
.title::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: white;
  border-radius: 999px;
  top: 13px;
  left: -36px;
  border: 3px solid var(--primary-color);
}

.heading {
  position: relative;
  color: rgb(255, 255, 255);
  background: linear-gradient(rgba(var(--primary-color-rgb), 0.7), rgba(var(--primary-color-rgb), 0.7)), url(../images/breadcrumb-bg.webp) no-repeat center / cover;
  padding-block: clamp(6rem, 3rem + 1.5vw, 10rem);
}

.doctor_details ul {
  margin-left: 50px;
}

.doctor_details ul li {
  list-style: disc;
  line-height: 20px;
  padding-bottom: 10px;
}


/* Slider */

.speaker-slider1 {
  height: 500px !important;
}