/*
Theme Name: Healthmantra
Theme URI: 
Author: 
Author URI: 
Description: Healthmantra is specially designed product packaged for Healthmantra by TemplatesJungle.
Version: 
*/

/*--------------------------------------------------------------
This is main CSS file that contains custom style rules used in this template
--------------------------------------------------------------*/

/*------------------------------------*\
    Table of contents
\*------------------------------------*/

/*------------------------------------------------

CSS STRUCTURE:

1. VARIABLES

2. GENERAL TYPOGRAPHY
  2.1 General Styles
  2.2 Background Color
  2.3 Text Color
  2.4 Border Radius
  2.5 Section
    - Section Paddings
    - Section Margins
    - Section Title
    - Content width
  2.5 Buttons
    - Button Sizes
    - Button Shapes
    - Button Color Scheme
    - Button Aligns

3. CONTENT ELEMENTS
  3.1 Text Overlay
  3.2 Navigation Sticky

4. SITE STRUCTURE
  4.1 Header
    - Offcanvas
  4.2 Intro
  4.3 Testimonial
  4.4 Training
  4.5 Information
  4.6 Newsletter
  4.7 Footer

    
/*--------------------------------------------------------------
/** 1. VARIABLES
--------------------------------------------------------------*/
:root {
  --accent-color:             #333;
  --black-color:              #000;
  --dark-color:               #000000; 
  --gray-color-100:           #F9F7F5;
  --gray-color-200:           #E1E1E1;
  --gray-color-300:           #D8D8D8;
  --gray-color-400:           #ced4da;
  --gray-color-500:           #adb5bd;
  --dark-gray-color:          #474341;
  --bs-light-rgb:             rgba(255,255,255,1);
  --light-color:              #fff;
  --bs-light-rgb:             rgba(255,255,255,1);
  --primary-color:            #8b3dca;
  --primary-dim-color:        #513a5e;  
  --primary-light-color:      #EAF1E4;
  --secondary-color:          #000000;
  --yellow-color:             #F1B416;
  --swiper-theme-color:       #807E7C !important;  

}


/* on mobile devices below 600px
 */
@media screen and (max-width: 600px) {
    :root {
        --header-height : 100px;
        --header-height-min   : 80px;
    }
}

/* Fonts */
:root {
    --body-font           : "Inter", sans-serif;
    --heading-font        : "In", serif;
}


/*----------------------------------------------*/
/* 2 GENERAL TYPOGRAPHY */
/*----------------------------------------------*/

/* 2.1 General Styles
/*----------------------------------------------*/
*, *::before, *::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  box-sizing: border-box;
}
body {
  font-family: var(--body-font);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--accent-color);
  margin: 0;
}
ul.inner-list li {
   font-size: 1.2em;
   color: var(--dark-gray-color);
}
a {
  color: var(--dark-gray-colo);
  text-decoration: none;
  transition: 0.3s color ease-out;
}
a.light {
  color: var(--light-color);
}
a.stretched-link {
  color: var(--primary-color);
}
a:hover {
  text-decoration: none;
  color: inherit;
  
 
}
p.light {
  color: var(--light-color);
}
ul.light li {
  color: var(--light-color);
}
span.light {
  color: var(--light-color);
}
svg.light {
  color: var(--light-color);
}
svg.light:hover {
  color: var(--primary-color);
}
table.light tr {
   color: var(--light-color);
}
b, strong {
  font-weight: bold;
}
.highlight {
  background: var(--dark-color);
  color: var(--light-color);
}

/* 2.2 Background Color
/*----------------------------------------------*/
.bg-dark {
    background: var(--dark-color) !important;
}
.bg-light {
    background: var(--light-color) !important;
}
.bg-gray-100 {
  background: var(--gray-color-100) !important;
}
.bg-primary-light {
    background: var(--primary-light-color) !important;
}

/* 2.3 Text Color
/*----------------------------------------------*/
.text-primary {
  color: var(--primary-color) !important;
}
.text-secondary {
  color: var(--secondary-color) !important;
}
.text-primary-dim {
  color: var(--primary-dim-color) !important;
}

/* 2.4 Border Radius
/*----------------------------------------------*/
.border-rounded-40 {
   border-radius: 340px;
}
.border-circle {
   border-radius: 50%;
}

/* 2.5 Section
/*----------------------------------------------*/

/* - Section Padding
--------------------------------------------------------------*/
.padding-small {
  padding-top: 2em;
  padding-bottom: 2em;
}
.padding-medium {
  padding-top: 4em;
  padding-bottom: 4em;
}
.padding-large {
  padding-top: 2em;
  padding-bottom: 2em;
}
.padding-xlarge {
  padding-top: 10em;
  padding-bottom: 10em;
}

/* - Section Margin
--------------------------------------------------------------*/
.margin-small {
  margin-top: 3em;
  margin-bottom: 3em;
}
.margin-medium {
  margin-top: 5em;
  margin-bottom: 5em;
}
.margin-large {
  margin-top: 7em;
  margin-bottom: 7em;
}
.margin-xlarge {
  margin-top: 9em;
  margin-bottom: 9em;
}

@media only screen and (max-width: 768px) {
  .margin-small,
  .margin-medium,
  .margin-large {
    margin-top: 1em;
    margin-bottom: 1em;
  }
}

/* - Section Title
--------------------------------------------------------------*/
h1, h2, h3, h4, h5 {
    font-family: var(--heading-font);
    font-weight: 500;
    line-height: 1;
}
h1.light, h2.light, h3.light, h4.light, h5.light {
    color: var(--light-color);
}
/*.responsive-text {
  font-size: 16px;  Default font size 

}

@media (min-width: 992px) {
  .responsive-text {
    font-size: 20px;  Font size for larger screens 
  }
}

/* - Section width
--------------------------------in------------------------------*/
.container-md {
    max-width: 1450px;
}
.container-lg {
    max-width: 1750px;
}

/*--------------------------------------------------------------
/** 2.5 Buttons
--------------------------------------------------------------*/
/* - Button Sizes
------------------------------------------------------------- */
.btn.btn-small {
  padding: 0.8em 2.7em;
  font-size: 0.85em;
}
.btn.btn-medium {
  padding: 1.2em 2.7em;
  font-size: 1em;
}
.btn.btn-large {
  padding: 0.8em 4.6em;
  font-size: 1.6em;
}
.btn.btn-full {
  display: block;
  margin: .85em 0;
  width: 100%;
  letter-spacing: 0.12em;
}

/* - Button Shapes
------------------------------------------------------------- */
.btn.btn-rounded,
.btn.btn-rounded::after {
  border-radius: 6px;
}
.btn.btn-pill,
.btn.btn-pill::after {
  border-radius: 2em;
}
/* button outline */
.btn.btn-outline-dark,
.btn.btn-outline-light,
.btn.btn-outline-accent {
  background: transparent;
  text-shadow: none;
  box-shadow: none;
}
.btn.btn-outline-dark:hover::after,
.btn.btn-outline-light:hover::after {
  background-color: transparent;
}
.btn.btn-outline-dark {
  border-color: rgba(0,0,0,0.4);
  color: var(--dark-color);
  transition: 0.5s ease-in-out;
}
.btn.btn-outline-dark:hover {
  background: var(--dark-color);
  color: var(--light-color);
}
.btn.btn-outline-light {
  border-color: rgba(255,255,255,1);
  color: var(--light-color);
  transition: 0.5s ease-in-out;
}
.btn.btn-outline-light:hover {
  color: var(--dark-color);
}
.btn.btn-outline-gray {
  background: transparent;
  border-color: var(--gray-color-200);
  color: var(--dark-color);
}
.btn.btn-outline-gray:hover {
  color: var(--light-color) !important;
}
.btn.btn-outline-accent {
  background: transparent;
  border-color: var(--accent-color);
  color: var(--dark-color);
}
.btn.btn-outline-accent:hover {
  border-color: var(--dark-color);
  color: var(--dark-color) !important;
}

/* - Buttons Color Scheme
------------------------------------------------------------- */
.btn.btn-normal {
  text-decoration: underline;
  border: none;
  font-weight: 800;
}
.btn.btn-normal:hover,
.btn.btn-normal:focus {
  text-decoration: none;
  box-shadow: none;
}
.btn.btn-accent {
  color: var(--light-color);
  background-color: var(--accent-color);
  border: none;
}
.btn.btn-accent:hover {
  color: var(--light-color) !important;
  background-color: var(--primary-color);
}
.btn.btn-black {
  background-color: var(--dark-color);
  color: var(--light-color);
  border: none;
}
.btn.btn-black:hover {
  background-color: var(--primary-color);
  color: var(--light-color);
}
.btn.btn-light {
  background-color: var(--light-color);
  color: var(--dark-color);
  border: none;
  transition: 0.5s ease-in-out;
}
.btn.btn-light:hover {
  background-color: var(--primary-color);
  color: var(--light-color);
}
.btn-primary {
  color: var(--light-color);
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  transition: 0.5s ease-in-out;
}
.btn-primary:hover {
  color: var(--light-color);
  background-color: var(--dark-color);
  border-color: var(--dark-color);
}

/* - Buttons Aligns
------------------------------------------------------------- */
.btn-left {
  text-align: left;
  display: block;
}
.btn-center {
  text-align: center;
  display: block;
}
.btn-right {
  text-align: right;
  display: block;
}

/*----------------------------------------------*/
/* 3 CONTENT ELEMENTS */
/*----------------------------------------------*/

/* 3.1 Text Overlay 
------------------------------------------------------------- */
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}


/* 3.2 Navigation Sticky 
------------------------------------------------------------- */
nav.nav-bg{
  background: rgba(62, 12, 62, 0.8);
  height: 80px;
  padding: 10px 50px;
}
nav.nav-bg a.nav-link {
  color: var(--light-color) !important;
}

nav.nav-bg h3{
  color: var(--light-color) !important;
}
@media (max-width: 991.98px) {
#bdNavbar {
  background-color: black !important;
 /* Set background color to black */
}

#navbar .nav-link {
  color: white !important;
  cursor: pointer; /* Set text color to white */
}
.btn-box button:hover{
background-color: var(--light-color) !important;
color: var(--primary-color)!important;
}}

/*----------------------------------------------*/
/* 4 SITE STRUCTURE */
/*----------------------------------------------*/

/* 4.1 Header
------------------------------------------------------------- */
.site-header {
  width: 100%;
  z-index: 10;
}
#navbar a.nav-link:hover,
navbar-brand:hover
#navbar a.nav-link:focus
 {
  color: var(--light-color);
}
.navbar-toggler svg.navbar-icon {
  width: 40px;
  height: 40px;
  fill: var(--light-color);
  outline: none;
}

@media only screen and (max-width: 1400px) {
  /*#header-nav .btn-box {
     display: none;
   }*/
  .justify-content-md-end {
     justify-content: flex-end!important;
   }
 }

/* - Offcanvas
------------------------------------------------------------- */
#header-nav .offcanvas.show {
  z-index: 9999;
  background-color: var(--gray-color-100);
}
.offcanvas.show .nav-item a.nav-link,
#header-nav .offcanvas.show .nav-item a:hover {
  font-size: 2em;
  color: var(--dark-color);
}
.offcanvas.show .offcanvas-body .navbar-nav {
  align-items: unset!important;
  padding-left: 20px;
}

@media (min-width: 1399px) {
  #header .navbar-expand-lg {
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  #header .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  #header .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

/* 4.2 Intro
------------------------------------------------------------- */
.banner-content h1.banner-title {
  font-size: 18.7em;
  animation: fade-in 1s;
  animation-duration: 7s;
  text-align: center;
}
.banner-content h2.subtitle {
  font-size: 5.7em;
  animation: fade-in 1s;
  animation-duration: 7s;
  text-align: center;
}
#training, #intro{
 padding-top: 150px;
padding-bottom: 20px !important;
}
@media (max-width: 1366px) {
  #intro {
    padding-top: 2em;
 }

  .banner-content h1.banner-title {
    font-size: 10.2em;
 }
 .banner-content h2.subtitle {
    font-size: 5.2em;

  }
}
@media (max-width:580px) {
  .banner-content h1.banner-title {
    font-size: 4.7em;
 }
 .banner-content h2.subtitle {
    font-size: 2.2em;
  }

}

/* 4.3 Testimonial
------------------------------------------------------------- 
.testimonial {
  bottom: 100px;
}
.testimonial .review-item {
  width: 45%;
  box-shadow: -1px 7px 10px -13px rgba(0,0,0,0.45);
}
.testimonial .review-item .review-content {
  width: 80%;
}
.review-item svg.star {
  fill: var(--yellow-color);
}

@media (max-width: 1267px) {
  .testimonial {
    bottom: -50px;
  } 
  .testimonial .review-item {
    margin-bottom: 20px;
  }
}

@media (max-width:991px) {
  .testimonial .review-item {
    width: 85%;
  }
}

@media (max-width:580px) {
  .testimonial .review-item {
    width: 95%;
  }
  .testimonial .review-item .review-content {
    width: 65%;
  }
}
*/
/* 4.4 Training
------------------------------------------------------------- */
.training-card {
  display: flex;
  flex-direction: column;
  border: #000 2px solid;
  border-radius: 15px;
}

.training-card img {
  border-radius: 15px;
}
.card-detail {
  position: absolute;
  background-color: rgba(33, 1, 41, 0.7); /* Darker background with opacity */
  color: white; /* Text color */
  padding: 20px; /* Adjust as needed */
  bottom: 90px;
  width: 100%;
  opacity: 0; /* Initially hidden */
  transition: opacity 0.3s;
  
}

.training-card:hover, .card-detail {
  opacity: 1; 
  border-radius: 15px;/* Show the overlay on hover */
}

/* 4.5 Information
------------------------------------------------------------- */
#information {background-color: white !important;}

#information .info-detail {
  padding: 3em 1em;
  background-color: white !important;
  color: var(--dark-color)!important;
  box-shadow: #000;
 /* border: #000 2px solid;
  border-radius: 15px;8/
}

@media (max-width:1280px) {
  #information .info-detail {
    padding: 4em;

  }
}

/* 4.6 Newsletter
------------------------------------------------------------- */
.newsletter-form {
  width: 60%;
}
.newsletter-content input {
  width: 100%;
  height: 68px;
  border: 1px solid var(--gray-color-300);
}
.newsletter-content button {
  top: 2px;
  right: 0;
}

@media (max-width:1366px) {
  .newsletter-form {
    width: 90%;
  }
}

@media (max-width:580px) {
  .newsletter-content button {
    top: 76px;
    width: 100%;
  }
} 


/* 4.7 Footer
------------------------------------------------------------- */
footer{
  width: 100% !important;
  margin: 0 !important;
  padding-bottom: 0px;
}

@media (max-width:580px) {
  #footer .row {
    margin: 0 auto;
    text-align: center;
  }
  #footer ul.social-links {
    margin: 0 auto;
    justify-content: center;
  }
}
/*preloader*/
.preloader{
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 100000;
  background: #f1f1f1;
  top: 0;
  display: flex;
  align-items: center;
  opacity: 1;
  }
  .preloader img {
  animation: spin 3s ease;
  transition: all;
  margin: 0 auto;
  }
/*back to top button */
.back-to-top {
  position: fixed;
  bottom: -40px;
  right: 40px;
  display: block;
  width: 80px;
  height: 80px;
  line-height: 50px;
  background: #400056;
  color: #400056;
  text-align: center;
  text-decoration: none;
  border-radius: 50%;
  opacity: 0;
  -webkit-transform: scale(0.3);
  -ms-transform: scale(0.3);
  transform: scale(0.3);
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.2);
  z-index: 9;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.back-to-top:focus {
  color: #000;
}
.back-to-top.show {
  bottom: 40px;
  right: 40px;
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.back-to-top.show:hover {
  color: #000;
  bottom: 30px;
  opacity: 1;
}
.arrow {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiI+PHN0eWxlPi5zdDB7ZmlsbDojZmZmfTwvc3R5bGU+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMxOS4xIDIxN2MyMC4yIDIwLjIgMTkuOSA1My4yLS42IDczLjdzLTUzLjUgMjAuOC03My43LjZsLTE5MC0xOTBjLTIwLjEtMjAuMi0xOS44LTUzLjIuNy03My43UzEwOSA2LjggMTI5LjEgMjdsMTkwIDE5MHoiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzE5LjEgMjkwLjVjMjAuMi0yMC4yIDE5LjktNTMuMi0uNi03My43cy01My41LTIwLjgtNzMuNy0uNmwtMTkwIDE5MGMtMjAuMiAyMC4yLTE5LjkgNTMuMi42IDczLjdzNTMuNSAyMC44IDczLjcuNmwxOTAtMTkweiIvPjwvc3ZnPg==);
  position: absolute; width: 12px; height: 12px; background-size: contain;
  transform: rotate(-90deg);
  top: 30%;
  left: 40%;
}
.arrow:nth-child(2){
  top: 42%;
}

@keyframes bounceAlpha {
  0% {opacity: 1; transform: rotate(-90deg) translateX(0px) scale(1);}
  25%{opacity: 0; transform: rotate(-90deg) translateX(10px) scale(0.9);}
  26%{opacity: 0; transform: rotate(-90deg) translateX(-10px) scale(0.9);}
  55% {opacity: 1; transform: rotate(-90deg) translateX(0px) scale(1);}
}

.back-to-top:hover .arrow{
  animation-name: bounceAlpha;
  animation-duration:1.4s;
  animation-iteration-count:infinite;
  animation-timing-function:linear;
}
.back-to-top:hover .arrow:nth-child(2){
  animation-name: bounceAlpha;
  animation-duration:1.4s;
  animation-delay:0.2s;
  animation-iteration-count:infinite;
  animation-timing-function:linear;
}

@media only screen and (max-width: 575px) {
  .back-to-top {
      width: 40px;
      height: 40px;
      line-height: 40px;
  }
  .back-to-top.show {
      bottom: 10px;
      right: 10px;
  }
  .back-to-top.show:hover {
      bottom: 10px;
  }
  .arrow {
      top: 27%;
      left: 37%;
  }
}

/*cursor*/



#cursor {
  position: fixed;
  top: -5px;
  left: -5px;
  width: 10px;
  height: 10px;
  background-color: rgb(86, 11, 105);
  border-radius: 50%;
  pointer-events: none;
  z-index: 999;
}


#cursor-border {
  --size: 50px;
  position: fixed;
  top: calc(var(--size) / -2);
  left: calc(var(--size) / -2);
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgb(24, 2, 18);
  pointer-events: none;
  transition: top 0.15s ease-out, left 0.15s ease-out, width 0.15s ease-out,
    height 0.15s ease-out, background-color 0.15s ease-out;
  z-index: 999;
}
}
/* This CSS rule hides the custom cursor for screens larger than 830px */
@media only screen and (max-width: 831px) {
  #cursor,
  #cursor-border {
    display: none;
  }
}

/* This CSS rule sets the default cursor for screens up to 830px */
@media only screen and (max-width: 830px) {
  #cursor,
  #cursor-border {
    display: none;
  }
  /* Set the cursor property to 'auto' to show the default cursor */
  body {
    cursor: auto;
  }
}
.sticky-sidebar {
  position: fixed;
  top: 10px; /* Adjust this value to match the height of your main nav */
  left: 0;
  width: 200px;
  height: calc(100vh - 10px); /* Adjust this value to account for the main nav */
  background: rgb(255, 255, 255, 0.6);
  color: #000000;
  overflow-y: auto; /* Add scrollbars if content exceeds sidebar height */
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  padding: 20px; /* Adjust this value for spacing */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-top-right-radius: 25px;
  z-index: 2;
  display: none;
}


.sticky-sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sticky-sidebar ul li {
  margin: 10px 0; /* Add equal margin on top and bottom */
  padding: 20px;
  border: 1px solid rgb(0, 0, 0);
  border-radius: 15px;
  color: #000;
}
.sticky-sidebar ul li:hover {
transform: scale(0.9);
background-color: rgb(66, 6, 123);
color: #f1f1f1;
}

.sticky-sidebar ul li a {
  display: block;
  text-decoration: none;
  color: #000000;
  padding: 10px 0;
  transition: color 0.3s ease-in-out;
}

.sticky-sidebar ul li a:hover {
  color: white;
}
.container-case {

  height: 100vh;
  overflow: hidden;
}
.content {

  overflow-y: auto;

  
}
.popup-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}
@media only screen and (max-width: 830px) {
  .sticky-sidebar {
    display: none;
    width: 0px;
  }

  .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
   
  }
  .content-container .container {
padding-left: 0px;
margin-left: 0;
   /* Remove the padding on the left side for smaller screens */
  }
  
}
  .content .container {
    padding-left: 0; /* Remove the padding on the left side for smaller screens */
  }

  .content img{
    min-width: 600px;
    max-width: 900px;
  }

  .content img,
  .content iframe {
    max-width: 100%;
    height: auto;
    padding-left: 0;
  }
  section{
 padding: none;
 margin: 0 auto;
  }

@media only screen and (max-width: 816px) {
 .btn-box button{
font-size: 12px !important;

  }
  .content {
    padding-right: 0px;
    z-index: 2;
    position: relative; /* Remove the padding on the left side for smaller screens */
 }

}

.popup-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
  max-width: 80%;
  text-align: center;
}

.popup-content h2 {
  margin-top: 0;
}

.popup-content p {
  margin: 10px 0;
}

.popup-content button {

  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
}

.popup-content button:hover {
  background-color: #0056b3;
}
/*contact button*/
.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(8, 8, 8, 0.4)
}

.modal-content {
    background-color:var(--light-color);
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 400px;
    position: relative;
}

.close {
    position: absolute;
    top: 0;
    right: 10px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}
.sending{
  background-color: #8b3dca;
}