/* ==========================================================================
   Custom CSS
   ========================================================================== */
/* Inter */

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Plus Jakarta Sans */

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Regular.woff2")
    format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Medium.woff2")
    format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-SemiBold.woff2")
    format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Bold.woff2")
    format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ==========================================================================
   1. Variables
   ========================================================================== */

:root {
  --color-primary: #001116;
  --color-secondary: #222222;
  --color-text: #313131;
  --color-white: #ffffff;
  --anchor-hover: #093c44;

  --font-primary: "Inter", sans-serif;
  --font-heading: "Plus Jakarta Sans", sans-serif;

  --container-width: 1400px;
}

/* ==========================================================================
   2. Base
   ========================================================================== */

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--font-primary);
  color: var(--color-text);
  background: var(--color-white);
  font-size: 16px;
  line-height: 28px;
  font-weight: 500;
}

img {
  max-width: 100%;
  height: auto;
}

/* ==========================================================================
   3. Typography
   ========================================================================== */

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

p {
  margin: 0;
}
a {
  text-decoration: none;
  transition: 0.3s ease;
}
a:hover {
  color: var(--anchor-hover);
}
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ==========================================================================
   4. Layout
   ========================================================================== */

/* .container {
  width: min(100% - 2rem, var(--container-width));
  margin-inline: auto;
} */

/* ==========================================================================
   5. Header
   ========================================================================== */

header.site-header {
  position: absolute;
  top: 38px;
  left: 0;
  right: 0;
  z-index: 2;
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: linear-gradient(
    226.59deg,
    rgba(255, 242, 242, 0.03) 25.7%,
    rgba(255, 250, 250, 0.07) 94.73%
  );
  border: 1px solid;
  border-image-source: linear-gradient(
    298.22deg,
    rgba(255, 255, 255, 0.72) -3.86%,
    rgba(255, 255, 255, 0) 69.58%
  );
  backdrop-filter: blur(100px);
  padding: 13px 20px;
  border-radius: 15px;
}
.banner_heading {
  margin: 0 auto 40px;
  width: 850px;
}
.banner_heading h1 {
  font-size: 60px;
  line-height: 70px;
  font-weight: 600;
}
.banner_description {
  margin-bottom: 40px;
}
.banner_description p {
  font-size: 20px;
  line-height: 30px;
}
.button {
  font-size: 16px;
  line-height: 28px;
  font-weight: 500;
  text-transform: uppercase;
  color: var(--color-primary);
  padding: 20px 25px;
  border-radius: 35px;
  border: 1px solid transparent;
  display: inline-block;
  margin: 0 5px;
}
.white_button {
  background: var(--color-white);
}
.white_button:hover,
.transparent_button:hover {
  color: var(--color-white);
  background: var(--anchor-hover);
}
.transparent_button:hover {
  border: 1px solid var(--anchor-hover);
}
.transparent_button {
  background: transparent;
  border: 1px solid var(--color-white);
  color: var(--color-white);
}
.site-branding a {
  display: block;
  width: 220px;
}

/* ==========================================================================
   6. Navigation
   ========================================================================== */

.site-navigation {
  display: flex;
  align-items: center;
}
button.menu-toggle {
  display: none;
}
ul.primary-menu {
  display: flex;
  align-items: center;
}
.header-actions .button {
  background: var(--color-white);
  color: var(--color-primary);
  padding: 20px 25px;
  border-radius: 50px;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 28px;
  display: inline-block;
}
ul.primary-menu li {
  margin: 0 26px;
}
ul.primary-menu li a {
  color: var(--color-white);
  text-transform: uppercase;
  font-size: 16px;
  line-height: 28px;
  font-weight: 500;
  border-width: 0;
  position: relative;
}
ul.primary-menu li a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 100%;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

ul.primary-menu li a:hover::after {
  transform: scaleX(1);
}

/* ==========================================================================
   7. Buttons
   ========================================================================== */

/* ==========================================================================
   8. Content
   ========================================================================== */
.accordion-content {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition:
    max-height 0.4s ease,
    opacity 0.25s ease;
}

.accordion-item.active .accordion-content {
  opacity: 1;
}

/* ==========================================================================
   9. Footer
   ========================================================================== */

.footer {
  background: var(--color-primary);
  padding: 100px 0 40px;
  margin-top: 50px;
}
.footer_top {
  display: flex;
  border-bottom: 1px solid #9c9c9c;
  padding-bottom: 100px;
  margin-bottom: 10px;
}
.footer_left {
  width: 53%;
}
.footer_right {
  width: 47%;
}
.footer_logo {
  width: 200px;
  margin-bottom: 70px;
}
.footer_logo a {
  display: block;
}
.footer_social p {
  color: var(--color-white);
  margin-bottom: 30px;
}
ul.social_site {
  display: flex;
  align-items: center;
  gap: 26px;
}
ul.social_site a {
  width: 45px;
  height: 45px;
  border-radius: 100%;
  overflow: hidden;
  border: 1px solid #ffffff1c;
  display: flex;
  align-items: center;
  justify-content: center;
}
ul.social_site a:hover {
  background: var(--anchor-hover);
  border: 1px solid var(--anchor-hover);
}
.footer_heading {
  color: var(--color-white);
}
.footer_desc {
  color: #9c9c9c;
  margin-bottom: 60px;
}
.footer_links_outer {
  display: flex;
}
.footer_links {
  width: 33%;
}
.footer_links h4 {
  font-size: 22px;
  margin-bottom: 30px;
  color: var(--color-white);
}
.footer_links li {
  margin-bottom: 20px;
}
.footer_links li a {
  color: var(--color-white);
  font-size: 16px;
}
.footer_links li a:hover {
  color: var(--anchor-hover);
}
.footer_bottom {
  display: flex;
  justify-content: space-between;
}
.foot_bot_lft {
  font-size: 16px;
  font-weight: 400;
  color: var(--color-white);
}
.foot_bot_lft a {
  color: var(--color-white);
}
.footer_legal_menu {
  display: flex;
  gap: 35px;
}
.foot_bot_rgt a {
  font-weight: 400;
  color: var(--color-white);
}
.foot_bot_rgt a:hover {
  color: var(--anchor-hover);
}
/* ========================================================================== */
/*Banner*/
.container {
  width: min(
    calc(100% - (var(--container-padding) * 2)),
    var(--container-width)
  );
  max-width: 1400px;
  margin-inline: auto;
}
.banner {
  height: 100vh;
  position: relative;
  z-index: 1;
}
.banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.banner:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.44) 8.12%,
    rgba(0, 0, 0, 0.44) 44.23%,
    rgba(0, 0, 0, 0) 74.82%
  );
}
.banner_content {
  position: absolute;
  bottom: 100px;
  left: 0;
  right: 0;
  text-align: center;
  color: var(--color-white);
  z-index: 1;
}
/* ========================================================================== */
/*All Services*/
.commn_padding {
  padding: 50px 0;
}
.commn_margin {
  margin: 50px 0;
}
.center_text {
  text-align: center;
}
.break {
  display: block;
}
.mb15 {
  margin-bottom: 15px;
}
.mb40 {
  margin-bottom: 40px;
}
.mb50 {
  margin-bottom: 50px;
}
.commn_hdr {
  font-size: 42px;
  line-height: 52px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-primary);
}
.all_services_outer {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 25px;
}
.all_services_child {
  width: 21%;
  border-radius: 15px;
  padding: 30px 13px 13px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0px 3px 17px 0px #98aebd40;
}
.all_services_child:hover {
  background: #81c5c7;
}
.services_heading_out {
  padding: 0 10px;
  display: flex;
  justify-content: space-between;
}
.headingh4 {
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-primary);
}
.all_services_child:hover .headingh4 {
  color: var(--color-white);
}
.services_heading p {
  color: var(--color-text) !important;
}
.all_services_child:hover p {
  color: var(--color-white) !important;
}
.services_images {
  height: 180px;
  overflow: hidden;
  border-radius: 15px;
}
.services_images img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*Logo Slider*/
.logo_slider .swiper-wrapper {
  transition-timing-function: linear !important;
}

.logo_slider img {
  width: 150px;
  height: auto;
  opacity: 0.5;
  filter: grayscale(100%);
  transition: 0.3s;
}

.logo_slider img:hover {
  opacity: 1;
  filter: grayscale(0);
}
/*health Data*/
.health_data_outer {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.health_data_inner {
  background: var(--color-white);
  box-shadow: 0px 3px 17px 0px #98aebd40;
  border-radius: 20px;
  padding: 40px 80px;
  width: 25%;
}
.health_data_inner.active {
  transform: translateY(-35px);
  padding: 40px 30px;
  width: 50%;
}
.health_data_inner h3 {
  font-size: 50px;
  line-height: 40px;
  margin-bottom: 30px;
  font-weight: 600;
  color: var(--color-primary);
}
.health_icon {
  margin-bottom: 90px;
}
.mb70 {
  margin-bottom: 70px;
}
/**/
.health_difference_outer {
  background: var(--anchor-hover);
  border-radius: 30px;
}
.commn_hdr.white {
  color: var(--color-white);
}
.heading3 {
  font-size: 24px;
  color: var(--color-white);
}
.health_diff_content p {
  color: var(--color-white);
}
.health_difference_inner {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.health_difference_outer {
  padding-left: 30px !important;
  padding-right: 30px !important;
}
/*Working Process*/
.button.green_button {
  background: var(--anchor-hover);
  color: var(--color-white);
  border: 1px solid transparent;
}
.button.green_button:hover {
  color: var(--anchor-hover);
  background: var(--color-white);
  border: 1px solid var(--anchor-hover);
}
.porcess_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.working_process_outer {
  display: flex;
  gap: 30px;
}
.working_process_content {
  padding: 40px 50px 45px 35px;
  background: var(--color-white);
  border: 1px solid #def4e2;
  border-radius: 20px;
}
p.number {
  font-size: 42px;
  font-weight: 700;
  color: var(--anchor-hover);
}
/*Testimonial*/
.testimonial_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.testi_rating_outer {
  display: flex;
  flex-direction: column;
  align-items: end;
}
span.testi_rating {
  display: flex;
}
.testimonial_slider {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.testimonial_slider .swiper-slide {
  width: calc((100% - 90px) / 3.4);
  flex-shrink: 0;
}

.testi_content {
  background: var(--color-white);
  border: 1px solid #def4e2;
  border-radius: 20px;
  padding: 45px 55px 45px 35px;
  height: 100%;
  box-sizing: border-box;
}

/* Navigation container */
.testimonial_slider > .container {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);

  height: 50px;

  pointer-events: none;

  z-index: 10;
}

/* Buttons */
.testimonial-prev,
.testimonial-next {
  position: absolute;

  top: 0;

  width: 50px;
  height: 50px;

  border-radius: 50%;

  background: var(--anchor-hover);

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;

  cursor: pointer;

  pointer-events: auto;
}

.testimonial-prev {
  left: 0;
}

.testimonial-next {
  right: 0;
}

.testimonial-prev img,
.testimonial-next img {
  width: 20px;
  height: 20px;
}
.testi_comment {
  margin-bottom: 80px;
}
.comment_name {
  color: var(--color-primary);
  font-weight: 600;
}
.testimonial_list {
  display: flex;
  gap: 30px;
}
/*Our Team*/
.our_team_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mb30 {
  margin-bottom: 30px;
}
.our_team_lft p {
  width: 60%;
}
.meet_our_team {
  width: max-content;
}
.team_member_image {
  width: 263px;
  height: 260px;
}
.our_team_slider > .container {
  position: absolute;
  top: 40%;
  left: 0;
  right: 0;
  transform: translateY(-60%);
  height: 50px;
  pointer-events: none;
  z-index: 10;
}
.our_team_slider .swiper-slide {
  margin-right: 30px !important;
}

.our_team_slider .swiper-slide:last-child {
  margin-right: 0 !important;
}

.our_team_slider .team_member_image {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 30px;
}

.our_team_slider .team_member_image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.our-team-prev img,
.our-team-next img {
  filter: brightness(0) saturate(100%) invert(5%) sepia(23%) saturate(1100%)
    hue-rotate(160deg) brightness(92%) contrast(105%);
  display: block;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}
.our-team-prev,
.our-team-next {
  background: var(--color-white);
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
}
/*HOME FAQ*/
.accordion {
  width: 100%;
}

.accordion-item {
  border-bottom: 1px solid #d0e6e6;
}

.accordion-title {
  width: 100%;
  padding: 24px 0;
  border: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  text-align: left;
  font-size: 20px;
  font-weight: 600;
  line-height: 30px;
  color: #000;
}

.accordion-icon {
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  margin-left: 20px;
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}

.accordion-content p {
  margin: 0;
  padding: 0 45px 25px 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text);
}

/* First item open */
.accordion-item.active .accordion-content {
  max-height: 300px;
}
/*Blog Slider*/
.blog_slider_outer {
  overflow: hidden;
}
.blog_slider_outer .swiper-slide {
  width: auto;
}
.blog_slider_outer .swiper-slide {
  margin-right: 30px !important;
}
.blog_img {
  border-radius: 20px;
  overflow: hidden;
}
.blog_img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.read_acticle {
  text-transform: uppercase;
  color: var(--anchor-hover);
  text-decoration: underline;
}
.read_acticle:hover {
  color: var(--color-primary);
}

/*Faq Page*/
/*Banner*/
section.banner.banner_faq {
  height: 450px;
}
.banner_faq .banner_content {
  bottom: auto;
  top: 50%;
}
.banner.banner_faq:before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background: radial-gradient(
    ellipse at center,
    #c8eacf 0%,
    #ddf2e1 40%,
    #f2faf3 65%,
    #ffffff 100%
  );

  backdrop-filter: blur(340px);
  -webkit-backdrop-filter: blur(340px);
  width: 100%;
  z-index: -1;
  height: 200px;
  top: 280px;
}
/*Faq sec*/
.faqinner {
  display: flex;
  gap: 25px;
}
.faqinner_lft {
  width: 40%;
}
.faqinner_rgt {
  width: 60%;
}
.faqinner_lft p {
  font-weight: 400;
}
.faqinner_rgt .accordion-item.active {
  background: linear-gradient(101.43deg, #629b9d 8.63%, #15484a 99%);
  border-radius: 30px;
  transition: 0.3s ease;
  border: 1px solid transparent;
}
.faqinner_rgt .accordion-item.active .accordion-title {
  border-bottom: 1px solid #42ada842;
  padding: 30px 45px 30px 30px;
}
.faqinner_rgt .accordion-item.active .accordion-content {
  padding: 25px 45px 25px 30px;
}
.faqinner_rgt .accordion-item.active span,
.faqinner_rgt .accordion-item.active p {
  color: var(--color-white);
}
.faqinner_rgt .accordion-item {
  transition: 0.3s ease;
  margin-bottom: 20px;
  background: var(--color-white);
  border-radius: 20px;
  border: 1px solid #003a430d;
  padding: 30px 45px 25px 30px;
}
.faqinner_rgt .accordion-item:last-child {
  margin-bottom: 0;
}
.faqinner_rgt .accordion-item.active,
.faqinner_rgt .accordion-title {
  padding: 0;
}
/*FAQ END*/
/*Blog Listing*/
.page_blog_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.page_blog_content {
  width: calc((100% - 60px) / 3);
}
.blog_category {
  line-height: 1;
  border: 1px solid #00000099;
  display: inline-block;
  padding: 6px 10px;
  border-radius: 2px;
}
.blog_listing_pagi {
  width: 100%;
  display: flex;
  justify-content: center;
}
.blog_listing_pagi .page-numbers {
  background: var(--color-white);
  color: var(--anchor-hover);
  border: 1px solid var(--anchor-hover);
  padding: 10px 15px;
  border-radius: 8px;
  margin: 0 5px;
}
.blog_listing_pagi .page-numbers:hover {
  background: var(--anchor-hover);
  color: var(--color-white);
}
.blog_listing_pagi span.page-numbers.current {
  background: var(--anchor-hover);
  color: var(--color-white);
  padding: 10px 15px;
  border-radius: 8px;
  margin: 0 5px;
}
.blog_listing_pagi span.page-numbers.current:hover {
  background: var(--color-white);
  color: var(--anchor-hover);
}
