@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

* {
  box-sizing: border-box;

  font-family: "Poppins", serif;
}

:root {
  --main-color: #09214b;
  --seconday-color: #dc3545;
}
header {
  position: sticky;
  top: 0;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  z-index: 999;
}
.logo img {
  max-width: 188px;
}

.header-area {
  padding: 9px 25px;
}
.search-bar {
  border: 1px solid #9d9d9d;
  border-radius: 10px 10px 0px 0px;
}
.search-bar input {
  height: 40px;
  border: none;
  outline: none;
  width: 100%;
  padding: 15px;
  font-size: 15px;
  font-weight: 500;
  color: #606060 !important;
  background: transparent;
  border-radius: 10px 10px 0px 0px;
}

.search-bar i {
  line-height: 25px;
  font-size: 20px;
  margin-top: 2px;
}

.search-bar input:focus {
  border: none;
  outline: none;
  box-shadow: none;
}

.cart-btn {
  font-weight: 500;
}
.main-header {
}

.search-container {
  display: flex;
  width: 100%;
  align-items: center;
  height: 100%;
  position: relative;
}

.search-container form {
  width: 100%;
}
.header-search-wrap {
  display: flex;
  align-items: center;
  margin-right: 30px;
}
.header-search-wrap a {
  text-decoration: none;
  color: black;
}
.header-right a:first-child {
  border: 1px solid #7b0000 !important;
  color: #7b0000;
  font-size: 15px;
}
.header-right a:last-child {
  background-color: #7b0000;
  color: white;
  font-size: 15px;
}
.header-bottom h5 {
  font-size: 16px;
  font-weight: 600;
  color: white;
}

.header-bottom {
  padding: 15px 30px;
  border-top: 1px solid #cccccc;
  background-color: #7b0000;
}
.upload-box {
  border: 1px solid #0c1c464a;
  border-radius: 13px;
  padding: 7px 20px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  background-color: #fff;
}

.upload-box .upload-icon {
  font-size: 20px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f5f5f5;
  margin-right: 10px;
}

.upload-box h5 {
  font-size: 18px !important;
  margin-bottom: 0;
}

.banner-section {
  padding: 50px 0;
}

.banner-section h4 {
  color: #1a1a1a;
    font-size: 28px;
}
.banner-section .hero-subtitle {
 color: #1a1a1a;
    font-size: 21px;
    font-weight: 500;
}

.banner-section .search-bar {
  background-color: #fff;
}

.sec {
  padding: 40px 0;
}

.frequently-booked-slider .owl-stage-outer {
  padding: 30px 0;
}
.cate-box {
  padding: 18px;
  width: 100%;
  border: 1px solid #9b9b9b;
  border-radius: 10px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  display: flex;
  align-items: center;
}
.cate-box h6 {
  margin-bottom: 0;
  font-size: 17px;
  font-weight: 600;
}

.cate-box .cate-icon {
  font-size: 30px;
  width: 50px;
  min-width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f5f5f5;
  margin-right: 10px;
}
.cate-box .cate-icon img {
  width: 60%;
}

.owl-nav {
  position: absolute;
  top: -45px;
  right: 20px;
}

.owl-nav button {
}
.owl-nav button {
  width: 40px;
  height: 40px;
  background-color: #09214b !important;
  margin: 5px;
  border-radius: 7px !important;
}
.owl-nav button i {
  color: #fff !important;
}

.package-box {
  border-radius: 0px 0px 15px 15px;
  border: 1px solid #ccc;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  overflow: hidden;
  background-color: #f1f1f1;
}
.package-box .package-image img {
  aspect-ratio: 1;
  object-fit: cover;
}
.package-name {
  padding: 15px 15px 10px 15px;
  border-bottom: 1px solid #ccc;
}

.package-title-box {
  height: 50px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 11px;
}
.package-title-box .package-display-btn {
  padding: 5px 7px;
  border-radius: 5px;
  height: fit-content;
  background-color: #e7e7e7;
  margin-bottom: 0px;
}
.package-name .package-title {
  display: flex;
  align-items: center;
  font-size: 19px;
  font-weight: 600;
  color: #09214b;
  /*height: 66px;*/
  line-height: 24px;
}
.package-name .package-title a {
  text-decoration: none;
  color: #09214b;
}

.package-name .numbers-box {
display: flex;
    justify-content: space-between;
}

.package-name .numbers-box .report-time {
    margin-right: 10px;
    background-color: #d6d6d6;
    padding: 2px 10px;
    border-radius: 5px;
}
.package-name .numbers-box .perameters{
      background-color: #d6d6d6;
    padding: 2px 14px;
    border-radius: 5px;
}
.package-name .numbers-box span {
font-size: 15px;
    font-weight: 600;
    color: #000000;
    margin-right: 10px;
    padding: 5px 7px;
    border-radius: 5px;
}

.package-content .package-des {
  padding: 15px;
  height: 87px;
  display: -webkit-box; /* Required for the flexbox-like behavior */
  -webkit-line-clamp: 3; /* Limits the text to 3 lines */
  -webkit-box-orient: vertical; /* Makes the content behave as a vertical box */
  overflow: hidden; /* Hides the overflowed text */
  text-overflow: ellipsis; /* Adds the "..." at the end of the last visible line */
  white-space: normal;
  margin-bottom: 15px;
}

.package-content .package-price-details-box {
  padding: 15px;
  /*background-color: #ffc9d2;*/
}

.package-name .numbers-box p {
  margin: 0;
}

.package-price-details-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.package-price-details-box .cart-btns {
  width: 50%;
}
.package-price-details-box .cart-btns a {
  width: 100%;
  background-color: #ad152a;
  color: white;
}
.package-price-contaienr {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.package-price h4 {
  font-size: 20px;
  font-weight: 600;
}

.package-price {
  /*border-right: 1px solid #ccc;*/
  padding-right: 10px;
  margin-right: 10px;
  display: flex;
  align-items: center;
}

.discount-box p {
  margin: 0;
}
.top-health-slider {
  padding: 30px 0;
}
.why-choose-us-container {
  padding: 30px 20px;
  background-color: #e7ebef;
  border-radius: 15px;
}
.why-choose-box {
  padding: 20px;
  border-radius: 7px;
  background-color: #fff;
  border: 1px solid #c1c1c1;
  margin-bottom: 20px;
}
.why-choose-box .why-choose-icon {
  border-bottom: 1px solid #ccc;
  margin-bottom: 7px;
}
.why-choose-box h5 {
  font-size: 16px;
}
.why-choose-box p {
  font-size: 14px !important;
  margin-bottom: 0;
  height: 60px;
}
.tags {
  padding: 5px 15px;
  font-size: 18px;
  background-color: #f5f5f5;
  margin-bottom: 5px;
}
.category-box {
  padding: 30px 20px;
  background-color: #f9e0db;
  border-radius: 15px;
}
.sec-title {
  color: #09214b;
}

.cate-btn {
  padding: 10px 20px;
  border-radius: 7px;
  background-color: #fff;
  border: 1px solid #09214b;
  color: #09214b;
  font-weight: 600;
}
.cate-btn:hover {
  padding: 10px 20px;
  border-radius: 7px;
  background-color: #09214b;
  border: 1px solid #09214b;
  color: #fff;
  font-weight: 600;
}

.cate-btn.active {
  padding: 10px 20px;
  border-radius: 7px;
  background-color: #09214b;
  border: 1px solid #09214b;
  color: #fff;
  font-weight: 600;
}

.family-care-slider {
  padding: 25px 0;
}
.testimonial-slider .owl-stage-outer {
  padding: 25px 0;
}

.testimonial-box {
  padding: 20px;
  border-radius: 15px;
  border: 1px solid #ccc;
  background-color: #09214b0d;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.testimonial-box h5 {
  font-size: 18px;
  font-weight: 600;
  color: #09214b;
  margin-bottom: 0;
}
.testimonial-content {
  height: 180px;
}
.testimonial-content p {
  font-size: 15px !important;
  margin-bottom: 0;

  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 7; /* Limit to 5 lines */
  text-overflow: ellipsis;
}
.testimonial-box p {
  font-size: 16px;
  margin-bottom: 0;
}
.testimonial-author {
  display: flex;
  align-items: center;
  gap: 15px;
}
.testimonial-box img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
footer {
  padding: 50px 0 0 0;
  background-color: #f1f1f1;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.footer-content {
  margin-left: 26px;
}
.footer-content h4 {
  font-size: 19px;
  font-weight: 600;
  margin-bottom: 25px;
}

.footer-content ul {
  padding: 0;
}

.footer-content ul li {
  list-style: none;
  margin-bottom: 10px;
}
.footer-content ul li a {
  list-style: none;
  margin-bottom: 10px;
  color: #000;
  text-decoration: none;
  font-size: 15px;
}

.contact-list li {
  display: flex;
  gap: 15px;
}

.contact-list li i {
  font-size: 14px !important;
  color: #09214b;
  /* padding: 10px; */
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  width: 36px;
  min-width: 36px;
  height: 36px;
  border: 1px solid #09214b;
}

.social-media {
  display: flex;
  gap: 15px;
  list-style-type: none;
  padding-left: 0;
}
.social-media i {
  font-size: 19px !important;
  color: #3c3c3c;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  width: 36px;
  height: 36px;
  border: 1px solid #09214b;
  background-color: white;
}
.social-media li a {
  text-decoration: none;
}
.footer-bottom {
  background-color: #09214b;
  color: #fff;
  text-align: center;
  font-size: 15px;
  padding: 11px 0px;
}
.footer-top {
  padding: 40px 0;
  border-top: 1px solid #00000030;
}

.sidemenu .offcanvas-body {
  background-color: #ececec;
}

.side-menu-box {
  background-color: #f7f7f7;
}

.side-menu-box li {
  list-style: none;
}

.side-menu-box {
  background-color: #fff;
}

.side-menu-box ul {
  padding: 0;
}

.side-menu-box li a {
  color: #000;
  text-decoration: none;
  display: block;
  padding: 7px 15px;
  border-bottom: 1px solid #ccc;
}
.side-menu-box li a:hover {
  background-color: #09214b;
  color: #fff !important;
}

.side-menu-box li i {
  width: 20px;
}
.btn-cart {
  background-color: #e5364e;
  color: #fff;
  font-weight: 600;
}

.btn-cart:hover {
  background-color: #0a2452;
  color: #fff;
  font-weight: 600;
}

.view-cart-btn {
  display: none;
}

.showDetailsSidebar .offcanvas-header {
  border-bottom: 1px solid #ccc;
}
.showDetailsSidebar .offcanvas-header {
  border-bottom: 1px solid #ccc;
}

.showDetailsSidebar {
  width: 500px !important;
}

.side-package-container {
  border-radius: 15px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  width: 100%;
  padding: 20px;
  border: 1px solid #ddd;
}

.side-package-title {
  font-size: 22px;
  font-weight: 600;
  color: #09214b;
  height: 29px;
  display: -webkit-box; /* For multi-line ellipsis in WebKit-based browsers */
  -webkit-line-clamp: 2; /* Limit to 2 lines */
  -webkit-box-orient: vertical; /* Set the box orientation to vertical */
  overflow: hidden; /* Hide overflowed content */
  text-overflow: ellipsis;
}

.side-package-price-box {
  display: flex;
  gap: 10px;
  align-items: center;
}
.side-package-price-box h4 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 0;
}
.side-package-price-box h6 {
  margin-bottom: 0;
}

.side-package-price-box .side-percent-box {
  padding: 3px 7px;
  min-width: 77px;
  font-size: 14px;
  font-weight: 600;
  border-radius: 5px;
  background-color: #09214b;
  color: #fff;
}

.side-package-des {
  margin-top: 20px;
  font-size: 15px;
}

.side-perameter-container {
  background-color: #ededed;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-top: 20px;
  padding: 10px 7px;
  border-radius: 5px;
}

.side-perameter-container .perameter-content-box {
  display: flex;
  width: 100%;
  align-items: center;
}

.side-perameter-container .perameter-content-box i {
  font-size: 25px;
  padding: 0 15px;
}

.side-perameter-container
  .perameter-content-box
  .perameter-content
  p:first-child {
  margin-bottom: 5px;
  font-size: 14px;
  color: #5e5e5e;
}
.side-perameter-container .perameter-content-box .perameter-content p {
  margin-bottom: 0px;
  font-size: 16px;
  font-weight: 600;
  color: var(--main-color);
}
.side-pretest-info-box {
  margin-top: 20px;
  display: flex;
  align-items: center;
}

.side-pretest-info-box i {
  padding: 0 10px 0 0;
  font-size: 20px;
}

.side-pretest-info-box p {
  margin-bottom: 0;
}

.side-pretest-info-box .side-pretest-info {
  font-weight: 600;
}

.promtional-banner-1 {
  margin-top: 40px;
}
.promtional-banner-1 img {
  border-radius: 15px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border: 1px solid #ccc;
}

.side-package-test-container {
  margin-top: 30px;
  padding: 20px;
  border: 1px solid #ccc;
  border-radius: 15px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.side-product-action-fixed-box {
  position: sticky;
  bottom: 0;
  width: 100%;
  box-shadow: rgba(0, 0, 0, 0.04) 5px 3px 0px;
  background-color: #fff;
  padding: 10px 20px;
}

.side-test-box-title {
  font-size: 22px;
  font-weight: 600;
  color: #09214b;
}
.category-box {
  position: relative;
}
.category-viwe-all-test-btn {
  position: absolute;
  top: 30px;
  right: 0;
  padding: 7px 15px;
  font-size: 18px;
  background-color: #7b0000;
  color: #fff;
  font-weight: 600;
  border-radius: 10px 0 0 10px;
  display: block;
  text-decoration: none;
}

.package-details-price-btns {
  display: flex;
  gap: 20px;
}

.package-details-price-btns .cart-btns {
  width: 48%;
}
.package-details-price-btns .cart-btns a {
  font-size: 16px;
}
.package-details-price-btns .book-now-btn-1 {
  width: 48%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #3183ab;
  border-radius: 7px;
  color: #fff;
  padding: 0px 15px;
}

.package-details-price-btns .book-now-btn-1 i {
  font-size: 18px;
}

.package-details-price-btns .book-now-btn-1 h5 {
  margin-bottom: 0;
}
.package-details-price-btns .book-now-btn-1 h6 {
  margin-bottom: 0;
  font-size: 14px;
}

.package-box-not-found {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 12px;
  height: 310px;
  border: 1px solid #ddd;

  padding: 0 25px;
}
.package-tag {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
.package-tag a {
  color: #000;
  text-decoration: none;
  font-size: 15px;
}

.side-package-test-container-2 {
  padding: 20px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border-radius: 12px;
  border: 1px solid #ccc;
  position: sticky;
  top: 150px;
}

.side-package-test-container-2 .save-price-container {
  padding: 10px;
  background-color: #d55454;
  color: #fff;
  border-radius: 7px;
  margin-bottom: 17px;
  text-align: center;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.side-package-test-container-2 .save-price-container h6 {
  margin-bottom: 0;
}

.checkout-container {
  max-width: 800px;
  margin: 0 auto;
  background: white;
  border-radius: 10px;
  /* box-shadow: 0 4px 6px rgba(0,0,0,0.1); */
  padding: 20px;
}

.checkout-steps {
  width: 100%;
  display: flex;
  justify-content: space-between;
  /* margin-bottom: 30px; */
  position: relative;
  /* padding: 0 40px; */
  background-color: white;
}

.checkout-step {
  display: flex;
  /* flex-direction: column; */
  align-items: center;
  z-index: 2;
  transition: all 0.3s ease;
  background-color: white;
  padding: 0px 9px;
}

.checkout-circle {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #ecf0f1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  margin-right: 9px;
}
.checkout-circle i {
  font-size: 14px;
}
.checkout-step.active .checkout-circle {
  background: #09214b;
  color: white;
  border-color: #09214b;
  transform: scale(1.1);
}

.checkout-step.completed .checkout-circle {
  background: #0cb03a;
  color: white;
}

.checkout-label {
  font-size: 16px;
  font-weight: 500 !important;
  color: #7f8c8d;
  transition: all 0.3s ease;
}

.checkout-step.active .checkout-label {
  color: #09214b;
  font-weight: bold;
}

#checkout-progress {
  position: absolute;
  top: 14px;
  left: 50px;
  right: 50px;
  height: 2px;
  background: #09214b;
  z-index: 1;
}

#progress-indicator {
  height: 100%;
  background: #0cb03a;
  width: 0%;
  transition: width 0.3s ease;
}

#checkout-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
  padding: 0 40px;
}

.checkout-button {
  background: #3498db;
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 20px;
  cursor: pointer;
  transition: transform 0.2s;
}

.checkout-button:hover {
  transform: translateY(-2px);
}

.checkout-button:disabled {
  background: #bdc3c7;
  cursor: not-allowed;
  transform: none;
}

.qty-input {
  color: #000;
  background: #fff;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.qty-input .product-qty,
.qty-input .qty-count {
  background: transparent;
  color: inherit;
  font-weight: bold;
  /*font-size: inherit;*/
  border: none;
  display: inline-block;
  min-width: 0;
  height: 2.5rem;
  line-height: 1;
}
.qty-input .product-qty:focus,
.qty-input .qty-count:focus {
  outline: none;
}
.qty-input .product-qty {
  width: 50px;
  min-width: 0;
  display: inline-block;
  text-align: center;
  appearance: textfield;
}
.qty-input .product-qty::-webkit-outer-spin-button,
.qty-input .product-qty::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}
.qty-input .qty-count {
  padding: 0;
  cursor: pointer;
  width: 2.5rem;
  font-size: 1.25em;
  text-indent: -100px;
  overflow: hidden;
  position: relative;
}
.qty-input .qty-count:before,
.qty-input .qty-count:after {
  content: "";
  height: 2px;
  width: 10px;
  position: absolute;
  display: block;
  background: #000;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.qty-input .qty-count--minus {
  border-right: 1px solid #e2e2e2;
}
.qty-input .qty-count--add {
  border-left: 1px solid #e2e2e2;
}
.qty-input .qty-count--add:after {
  transform: rotate(90deg);
}
.qty-input .qty-count:disabled {
  color: #ccc;
  background: #f2f2f2;
  cursor: not-allowed;
  border-color: transparent;
}
.qty-input .qty-count:disabled:before,
.qty-input .qty-count:disabled:after {
  background: #ccc;
}

.qty-input {
  border-radius: 4px;
  width: fit-content;
  border: 1px solid #e2e2e2;
}

.cart-item-action-box {
  display: flex;
  gap: 10px;
  align-items: center;
}

.cart-item-action-box .delele-cart-btn {
  width: 23px;
  height: 23px;
  display: flex;
  justify-content: center;
  align-items: center;
  /* border: 1px solid #000;
  border-radius: 50%; */
}
.cart-item-action-box .delele-cart-btn i {
  color: #707070;
  font-size: 16px;
}

.himalayan-cart-item-box {
  padding: 15px;
  border-radius: 7px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border: 1px solid #09214b;
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
  cursor: pointer;
}

.himalayan-cart-item-box h4 {
  color: #09214b;
  font-size: 18px;
}

.himalayan-cart-item-box p {
  margin-bottom: 0;
  font-size: 17px;
}

.himalayan-cart-item-box p del {
  font-size: 17px;
}
.cart-item-info {
  max-width: 70%;
}

.cart-sec {
  min-height: 80vh;
}

.member-details-container {
  display: none;
}

.cart-form-container {
  /* max-width: 600px; */
  margin: 0 auto;
  background: white;
  padding: 21px;
  border-radius: 16px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
    0 2px 4px -2px rgba(0, 0, 0, 0.1);
  transform: translateY(0);
  transition: transform 0.2s, box-shadow 0.2s;
  border: 1px solid #ccc;
}
.cart-form-container h5 {
  font-size: 18px;
  margin-bottom: 19px;
}
.cart-form-container:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.cart-form-container .form-group {
  margin-bottom: 15px;
}

.cart-form-container label {
  display: block;
  margin-bottom: 8px;
  color: var(--text-color);
  font-weight: 500;
  font-size: 0.95rem;
  letter-spacing: 0.025em;
}

.cart-form-container .required::after {
  content: "*";
  color: #dc2626;
  margin-left: 4px;
}

.cart-form-container input,
select {
  width: 100%;
  padding: 7px 16px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  font-size: 15px;
  box-sizing: border-box;
  transition: all 0.2s;
  background: #f8fafc;
  border: 1px solid #09214b;
}

.cart-form-container input:focus,
select:focus {
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
  background: white;
}

.cart-form-container .row {
  display: flex;
  /* gap: 20px; */
  margin-bottom: 8px;
}

.cart-form-container .col {
  flex: 1;
}

.cart-form-container .info-text {
  background: #f0f9ff;
  padding: 16px;
  border-radius: 12px;
  font-size: 0.95rem;
  color: #0369a1;
  margin: 24px 0;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid #bae6fd;
}

.cart-form-container .info-icon {
  font-size: 1.5rem;
}

.cart-form-container button {
  width: 100%;
  padding: 14px;
  background: #09214b;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 14px !important;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.cart-form-container button i {
  font-size: 11px;
}
.cart-form-container button:hover {
  background: #09214b;
  transform: translateY(-1px);
}

.cart-form-container button:active {
  transform: translateY(0);
}

/* Add subtle animations */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cart-form-container .form-group {
  animation: fadeIn 0.5s ease-out forwards;
  opacity: 0;
}

.cart-form-container .form-group:nth-child(1) {
  animation-delay: 0.1s;
}
.cart-form-container .form-group:nth-child(2) {
  animation-delay: 0.2s;
}
.cart-form-container .form-group:nth-child(3) {
  animation-delay: 0.3s;
}
.cart-form-container .form-group:nth-child(4) {
  animation-delay: 0.4s;
}
.cart-form-container .form-group:nth-child(5) {
  animation-delay: 0.5s;
}

.booking_system_container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

.booking_system_dates {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 10px;
  margin-bottom: 30px;
}

.booking_system_date_card {
  padding: 15px;
  border: 1px solid #b5b5b5;
  border-radius: 8px;
  cursor: pointer;
  min-width: 120px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.booking_system_date_card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.booking_system_date_card.booking_system_selected {
  background: #09214b;
  color: white;
  border-color: #09214b;
}
.booking_system_selected .booking_system_weekday {
  color: white;
}
.booking_system_selected .booking_system_month {
  color: white;
}

.booking_system_time_slots {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.booking_system_time_slot {
  padding: 15px;
  border: 1px solid #b5b5b5;
  border-radius: 6px;
  cursor: pointer;
  min-width: 120px;
  font-size: 15px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.booking_system_time_slot.booking_system_selected {
  background: #09214b;
  color: white;
  border-color: #09214b;
}

.booking_system_time_slot:hover:not(.booking_system_selected) {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  background: #f8f9fa;
}

.booking_system_selected_info {
  margin-top: 20px;
  padding: 20px;
  background: #f8f9fa;
  border-radius: 8px;
  display: none;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border-left: 4px solid #4caf50;
}

.booking_system_weekday {
  font-weight: 500;
  margin-bottom: 5px;
  color: #333;
}

.booking_system_date {
  font-size: 19px;
  margin-bottom: 5px;
}

.booking_system_month {
  color: #1b1b1b;
}

.booking_system_time_icon {
  font-size: 1.2em;
  margin-bottom: 5px;
  color: #666;
}

.booking_system_title {
  color: #333;
  margin-bottom: 40px;
  text-align: start;
  font-size: 21px;
  font-weight: 600;
}

.cart-persnal-details-review p {
  font-size: 14px;
}

.test-cart-review-box {
  border-bottom: 1px solid #ccc;
  padding: 7px 0;
}
.test-cart-review-box .test-name {
  color: #09214b;
  margin-bottom: 5px !important;
}
.test-cart-review-box p {
  margin-bottom: 0;
}

.test-cart-review-box p span {
  font-size: 14px;
}

.accordion-button:not(.collapsed) {
  background-color: #fff;
  box-shadow: none !important;
}

.payment-method-btn {
  font-size: 18px;

  font-weight: 600;
}

.counpan-container {
  display: flex;
  justify-content: space-between;
  border: 1px solid #9c9c9c;
  padding: 8px 15px;
  border-radius: 12px;
  /* border-bottom: 1px solid #ccc; */
  align-items: center;
  margin-bottom: 13px;
}

.side-final-price-box {
  padding: 20px;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 12px;
  margin-top: 30px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.side-price-container {
  display: flex;
  justify-content: space-between;
}

.side-final-btn-box {
  display: flex;
  justify-content: space-between;
}

.package-category-details {
  position: sticky;
  top: 150px;
  border: 2px solid #09214b;
  border-radius: 7px;
  overflow: hidden;
}

.package-category-details ul {
  padding: 0;
}

.package-category-details ul li {
  list-style: none;
  padding: 7px 15px;
  font-weight: 600;
  border-bottom: 1px solid #ccc;
}

.package-category-details ul li.active {
  background-color: #09214b;
  color: #fff;
}

.package-category-details ul li img {
  width: 30px;
}

.contact-info-box i {
  min-width: 55px;
  max-width: 55px;
  max-height: 55px;
  min-height: 55px;
  border-radius: 50%;
  text-align: center;

  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background-color: #09214b;

  font-size: 25px;
}
.contact-info-box p {
  margin-bottom: 0;
}

.upload-box-a {
  color: #0c1c46;
  text-decoration: none;
}

.bg-gray {
  background-color: #f7f7f7;
}
.suggestion-sec h5 {
  padding-left: 10px;
  display: inline-block;
  background-color: #dfdfdf;
  padding: 7px 16px;
  border-radius: 7px;
  color: #5e5e5e;
}
.suggestion-sec h4 {
  margin-bottom: 15px;
}
.consult {
  position: relative;
  display: inline-block;
}

.consult-list {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #f0f0f0;
  border: 1px solid #ccc;
  padding: 10px;
  width: 100px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  z-index: 100;
  width: 160px;
}

/* Show dropdown if hovering over the consult div (including h5 and dropdown) */
.consult:hover .consult-list {
  display: block;
}

.consult-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.consult-list ul li {
  padding: 5px 10px;
  cursor: pointer;
}
.consult-list ul li a {
  text-decoration: none;
  font-size: 17px;
  font-weight: 600;
  color: #3a3a3a;
  display: block;
}

.consult-list ul li:hover {
  background-color: #ddd;
}
@media screen and (max-width: 557px) {
  .logo img {
    max-width: 219px;
  }
}
.form-container {
  max-width: 900px;
  background: #fff;
  padding: 24px 20px;
  margin: auto;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-radius: 12px;
}

.form-title {
  text-align: center;
  margin-bottom: 30px;
  font-size: 24px;
  color: #333;
}

.form-row {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  /*flex-wrap: wrap;*/
}

.form-group {
  flex: 1 1 45%;
  display: flex;
  flex-direction: column;
}
.form-group select {
  border: 1px solid #cccccc;
}
label {
  font-weight: 600;
  margin-bottom: 6px;
  color: #555;
}

input {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
}

.doctor-select {
  border: 1px solid #b5b5b5;
  border-radius: 12px;
  background-color: #ededed;
  padding: 10px;
  height: 154px;
  overflow-x: hidden;
  display: grid;
  /*grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));*/
  gap: 20px;
  margin-top: 10px;
}

.doctor-card {
  position: relative;
  padding: 10px;
  height: 153px;
  display: flex;
  border: 1px solid #ddd;
  border-radius: 10px;
  overflow: hidden;
  background-color: #fafafa;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
}
.doctor-card .book-app,
.doctor-card .book-app2,
.doctor-card .book-app3 {
  position: absolute;
  bottom: 11px;
  right: 11px;
  text-decoration: none;
  background-color: #057e05;
  color: white;
  padding: 7px 20px;
  border-radius: 7px;
  font-size: 13px;
  border: none;
}
.doctor-card:hover {
  transform: scale(1.02);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.doctor-img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-right: 1px solid #ddd;
  border-radius: 50%;
  border: 1px solid #bbbbbb;
  padding: 8px;
}

.doctor-info {
  padding: 10px;
  padding-top: 0;
  display: flex;
  flex-direction: column;
  justify-content: start;
}

.doctor-name {
  font-weight: 600;
  color: #333;
}

.doctor-specialty {
  font-size: 14px;
  color: #0a0a0a;
}

.submit-btn {
  margin-top: 30px;
  background-color: #1a73e8;
  color: white;
  padding: 12px 24px;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  cursor: pointer;
  transition: background 0.3s;
}

.submit-btn:hover {
  background-color: #0f5fd3;
}
.doc-review {
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e3b11e;
}
.doc-review i {
  font-size: 11px;
  margin: 0px 2px;
}
@media (min-width: 576px) {
  .modal-dialog {
    max-width: 482px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 776px) {
  .doc-review {
    margin-bottom: 10px;
    justify-content: start;
  }
  .doctor-card .book-app,
  .doctor-card .book-app2,
  .doctor-card .book-app3 {
    bottom: 75%;
  }
  .checkout-label {
    text-align: center;
  }
  .himalayan-cart-item-box {
    flex-direction: column;
  }
  .cart-item-info {
    margin-bottom: 15px;
    max-width: 100%;
  }
  .sec-title {
    width: 65%;
  }
  .category-btn-box-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 10px;
    row-gap: 10px;
  }
  .package-name .numbers-box {
    flex-direction: column;
  }
  .package-name .report-time {
    margin-bottom: 22px;
  }
  .sec {
    padding: 20px 0;
  }

  .mobile-menu h5 {
    font-size: 18px;
    display: flex;
    align-items: center;
  }
  .modal-dialog {
    max-width: 909px;
    margin-right: auto;
    margin-left: auto;
  }
  .form-row {
    flex-direction: column;
  }
  .doctor-card {
    height: 245px;
    flex-direction: column;
  }
  /*.doctor-img{*/
  /*    display:flex;*/
  /*}*/
  .doctor-img img {
    margin-right: 10px;
  }
  .doctor-card .book-app {
    width: 120px;
    text-align: center;
    position: absolute;
    bottom: 50%;
    right: 10px;
    text-decoration: none;
    background-color: #057e05;
    color: white;
    padding: 7px 20px;
    border-radius: 7px;
    font-size: 11px;
  }
  .doctor-img {
    width: 60px;
    height: 60px;
  }
}

.notification {
  position: fixed;
  top: 12px;
  right: 13px;
  z-index: 999999999;
  background-color: #dbdbdb;
  border: 1px solid #198754;
  color: #2e7d32;
  border-left: 5px solid #2e7d32;
  border-radius: 8px;
  padding: 1rem 1.5rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: 435px;
  animation: slideIn 0.5s ease-out forwards;
  font-size: 15px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 2s ease;
}
.notification.show {
  opacity: 1;
  visibility: visible;
}
.notification-icon {
  background-color: #2e7d32;
  color: white;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
}

@keyframes slideIn {
  from {
    transform: translateY(-20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
.pkg-img img {
  width: 100%;
  object-fit: cover;
}
.pkg-cont {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid black;
  border-radius: 15px;
}
/*.pkg-cont .package-box{*/
/*     width:60%;*/
/* }*/
/*.pkg-cont .pkg-img{*/
/*      width:40%;*/
/*      border-radius:0px 15px 15px 0px;*/
/*}*/
.pkg-cont .pkg-img img {
  aspect-ratio: 1.6/1;
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 15px 15px 0px 0px;
}
#suggestions {
  width: 100%;
  max-height: 300px;
  overflow-y: auto;
  z-index: 9999;
  background-color: red;
  border: 1px solid #9c9c9c;
  border-radius: 0px 0px 11px 11px;
  border-top: none;
  border-bottom: none;
}
.suggestion-item {
  border-bottom: 1px solid #b5b5b5;
  background-color: white;
  padding: 7px 14px;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
}
.suggestion-item i {
  color: #979797;
}
.suggestion-item a {
  text-decoration: none;
  color: #3e3e3e;
  font-size: 15px;
}
.suggestion-item:hover {
  background-color: #f0f0f0;
}
.swiper-button-next,
.swiper-button-prev {
  width: 45px;
  height: 45px;
  background: linear-gradient(135deg, #8a0e23 0% 0%, #2575fc 100% 100%);
  border-radius: 50%;
  color: white;
  font-size: 20px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Hover effect */
.swiper-button-next:hover,
.swiper-button-prev:hover {
  transform: scale(1.1);
  background: linear-gradient(135deg, #8a0e23 0% 0%, #2575fc 100% 100%);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.35);
}

/* Icon style override (if using default Swiper arrows) */
.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: 18px;
  font-weight: bold;
}

/* Optional: adjust position (depending on your layout) */
.swiper-button-next {
  right: 10px;
}
.swiper-button-prev {
  left: 10px;
}
.dropdown-container {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f8f9fa;
  border: 1px solid #ddd;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  padding: 10px;
  z-index: 1;
  min-width: 160px;
}

.dropdown-container:hover .dropdown-content {
  display: block;
  width: 110%;
}

.dropdown-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.dropdown-content li {
  padding: 5px 10px;
  cursor: pointer;
}
.dropdown-content li a {
  text-decoration: none;
  color: black;
}
.dropdown-content li:hover {
  background-color: #e9ecef;
}
.accordion-button::after {
  display: none !important;
}
.all-tests {
  display: flex;
  flex-wrap: wrap;
}
.search-test-pkg {
  max-width: 500px;
}
#resultsContainer {
  /*height:300px;*/
  overflow-y: scroll;
}
.loadTests {
  border: 1px solid #ad152a;
}
.loadPackages {
  border: 1px solid #0c4989;
}
.loadTests:hover {
  background-color: #ad152a;
  color: white;
}
.loadPackages:hover {
  background-color: #0c4989;
  color: white;
}
.suggestions-visible {
  height: 200px;
  overflow-y: scroll; /* optional, enables scrolling if content overflows */
}

.form-control:focus {
  background-color: transparent;
}

.profile-wrapper {
  margin: 50px auto;
}

/* Left Sidebar */
.profile-sidebar {
  position: sticky;
  top: 127px;
  background-color: #f6f6f65c;
  border-radius: 15px;
  padding: 25px 20px;
  display: flex;
  flex-direction: column;
  border: 1px solid #cbcbcb;
  /* justify-content: space-between; */
}

.sidebar-user-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #0f79b7;
  color: #fff;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 15px auto;
}

.sidebar-user-name {
  text-align: center;
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 5px;
}

.sidebar-user-phone {
  text-align: center;
  color: #6c757d;
  margin-bottom: 20px;
}

.sidebar-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sidebar-links li {
  margin-bottom: 10px;
  cursor: pointer;
  font-weight: 500;
  color: #495057;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #9f9f9f;
}
.sidebar-links li a {
  padding: 12px 10px;
  display: flex;
  align-items: center;
  width: 100%;
  text-decoration: none;
  color: #495057;
}
.sidebar-links li i {
  margin-right: 10px;
  color: #4a5158;
  font-size: 1.2rem;
}

.sidebar-links li:hover {
  background-color: #f0f2f5;
  /* color: #0f79b7; */
}

.sidebar-links .logout-btn:hover {
  background-color: #ffdfdf;
  color: #0f79b7;
}

/* Right Main Content */
.profile-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.profile-card {
  background-color: #fcfcfc;
  border-radius: 15px;
  padding: 25px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border: 1px solid #cbcbcb;
}

.profile-card h5 {
  font-weight: 600;
  margin-bottom: 20px;
}

.profile-form .form-label {
  font-weight: 500;
}

.profile-form input,
.profile-form select {
  border-radius: 10px;
  border: 1px solid #ced4da;
  padding: 10px 12px;
}

.profile-form button {
  border-radius: 10px;
  padding: 10px 20px;
  background-color: #0f79b7;
  border: none;
}
.profile-form button:hover {
  background-color: #0f79b7;
}

/* Family Table */
.family-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 10px;
}

.family-table th {
  background-color: #e9ecef;
  font-weight: 600;
  padding: 12px;
}

.family-table td {
  background-color: #f8f9fa;
  padding: 12px;
  vertical-align: middle;
  border-bottom: 10px solid transparent;
  border-radius: 10px;
}

.family-table button {
  border-radius: 8px;
  padding: 5px 12px;
}

@media (max-width: 768px) {
  .profile-wrapper .row {
    flex-direction: column;
  }
}
.detail-added {
  display: none;
  position: fixed;
  top: 12px;
  right: 11px;
  background-color: #0f79b7;
  color: white;
  font-size: 16px;
  padding: 7px 21px;
  border-radius: 5px;
  z-index: 9999;
}
.detail-removed {
  display: none;
  position: fixed;
  top: 12px;
  right: 11px;
  background-color: #d1303f;
  color: white;
  font-size: 16px;
  padding: 7px 21px;
  border-radius: 5px;
  z-index: 9999;
}

.success-alert {
  display: none;
  position: fixed;
  top: 12px;
  right: 11px;
  background-color: #0f79b7;
  color: white;
  font-size: 16px;
  padding: 7px 21px;
  border-radius: 5px;
  z-index: 9999;
}
.error-alert {
  display: none;
  position: fixed;
  top: 12px;
  right: 11px;
  background-color: #d1303f;
  color: white;
  font-size: 16px;
  padding: 7px 21px;
  border-radius: 5px;
  z-index: 9999;
}

/* mobile header */
.custom-header {
  background-color: #09214b; /* Dark blue */
  color: #ffffff;
  width: 100%;
}

/* Top section */
.ch-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.8rem 1rem;
}
.ch-top .ch-logo {
  background-color: white;
  padding: 8px 10px;
  border-radius: 12px;
}
.ch-logo img {
  height: 25px;
}
.ch-menu-icon {
  font-size: 1.5rem;
  cursor: pointer;
}

/* Middle section - search */
.ch-middle {
  padding: 0.1rem 1rem;
}
.ch-search-bar input {
  width: 100%;
  padding: 0.5rem 1rem;
  border-radius: 25px;
  border: none;
}
.ch-search-bar input:focus {
  outline: none;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.5);
}

/* Bottom section - icons */
.ch-bottom {
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 0.8rem 0;
  padding-top: 20px;
}
.ch-bottom .ch-icon-item {
  display: flex;
  align-items: center;
  /* flex-direction: column; */
  align-items: center;
  font-size: 14px;
  cursor: pointer;
  background-color: #7c0101;
  padding: 5px 10px;
  border-radius: 12px;
}
.ch-bottom .ch-icon-item i {
  font-size: 16px;
  margin-right: 5px;
}

/* Hover effect */
.ch-bottom .ch-icon-item:hover i,
.ch-bottom .ch-icon-item:hover span {
  color: #00bfff;
}

/* mobile footer */
.mobile-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #ffffff;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  padding: 8px 0;
}

.footer-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 24px;
  color: #555555;
  transition: color 0.3s;
}

.footer-icon span {
  font-size: 12px;
  margin-top: 2px;
}

.footer-icon:hover {
  color: #007bff;
}

.footer-row {
  justify-content: space-around;
}

@media (min-width: 576px) {
  .mobile-footer {
    display: none; /* Hide on larger screens */
  }
}
@media (max-width: 576px) {
  .footer-content {
    margin-left: 0px;
  }
}

/* invoice section */
.invoice-section {
  background: #fcfcfc;
  border: 1px solid #cbcbcb;
  padding: 40px 20px;
  border-radius: 16px;
  width: 100%;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

.invoice-title {
  font-size: 1.8rem;
  margin-bottom: 20px;
  color: #222;
  font-weight: 600;
  text-align: center;
}

.invoice-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.invoice-item {
  background: #fff;
  border: 1px solid #aaafb3;
  margin-bottom: 15px;
  border-radius: 12px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  overflow: hidden;
}

.invoice-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

.invoice-link {
  display: flex;
  justify-content: space-between;
  padding: 16px 20px;
  text-decoration: none;
  color: #333;
  font-size: 1rem;
}

.invoice-link:hover {
  background: #f0f7ff;
}

.invoice-number {
  font-weight: 600;
}

.invoice-date {
  font-size: 0.9rem;
  color: #555;
}

/* Sidebar container */
.cart-sidebar {
  width: 100%;
  height: 100%;
  background: #fff;
  box-shadow: -4px 0 12px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  z-index: 1050;
}

/* Header */
.cart-header {
  padding: 1rem;
  border-bottom: 1px solid #e6e6e6;
  font-weight: 600;
  font-size: 1.2rem;
}

/* Cart item list */
.cart-items {
  flex: 1;
  overflow-y: auto;
  padding: 1rem;
}

.cart-item {
  /* display: flex; */
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  padding: 0.5rem;
  border: 1px solid #f0f0f0;
  border-radius: 10px;
  transition: 0.3s ease;
  border: 1px solid #bcbcbc !important;
}

.cart-item:hover {
  background: #fafafa;
}

.cart-item-left {
  display: flex;
  align-items: center;
  flex: 1;
  margin-right: 0.75rem;
}
.cart-item-left i {
  font-size: 28px;
  margin-right: 10px;
  color: #555555;
}
.cart-item-title {
  font-size: 0.95rem;
  font-weight: 500;
  color: #333;
}

.cart-item-price {
  font-size: 0.85rem;
  color: #777;
}

.cart-item-right {
  display: flex;
  align-items: center;
}

.cart-item-img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 8px;
  margin-left: 0.5rem;
}

.cart-item-remove {
  color: #878787;
  cursor: pointer;
  font-size: 16px;
  margin-right: 0.5rem;
}

/* Footer */
.cart-footer {
  border-top: 1px solid #e6e6e6;
  padding: 1rem;
  background: #fff;
}

.cart-total {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: 1rem;
}
.cart-footer button {
  width: 100%;
  border-radius: 12px;
}
.member-form {
  border-bottom: 2px solid #b1b1b1;
  margin-bottom: 28px;
}
.select2-container--default .select2-selection--multiple {
  width: 100%;
  padding: 7px 16px;
  border: 1px solid #cccccc;
  border-radius: 8px;
  font-size: 0.95rem;
  box-sizing: border-box;
  transition: all 0.2s;
  background: #f8fafc;
}
.select2-container .select2-search--inline .select2-search__field {
  height: 22px;
  margin: 0;
}
.remove-member-btn {
  width: 100px !important;
  padding: 6px 20px !important;
  font-size: 15px !important;
  background-color: #7b0000 !important;
}
.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice__remove:hover {
  background-color: transparent;
}
.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice {
  padding-left: 0;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #7b0000;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
  position: absolute !important;
  right: 0;
  top: 0;
  float: right;
  display: flex;
  justify-content: end;
  align-items: center;
  font-size: 17px !important;
}
.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice {
  padding-right: 15px;
}
.counpan-container.applied {
  border: 2px solid green;
  background: #f0fff0;
}
.select2-container--default
  .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #09214b;
  color: white;
  font-size: 14px;
}
.cart-total-amount {
  display: none;
}
.side-percent-box {
  display: none;
}
.address-label {
  display: block;
  padding: 12px 16px;
  border-radius: 6px;
  cursor: pointer;
  margin-bottom: 0px !important;
  transition: all 0.3s ease;
}
/* When radio input is checked, style the label */
input[type="radio"]:checked + .address-label {
  background-color: #09214b;
  border-color: #09214b;
  color: white;
}
.saved-address {
  border: 1px solid #bebebe !important;
}
.coupan-apply-btn button {
  background-color: #0a224b;
  color: white;
  font-size: 13px;
  padding: 4px 20px;
  border-radius: 50px;
}
.coupan-apply-btn button:hover {
  background-color: #0a224b;
  color: white;
}
/* lab card */
.lab-card {
  display: flex;
  flex-direction: column;
  border: 1px solid #afafaf;
  border-radius: 12px;
  background-color: #fff;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease;
  padding: 16px;
  cursor: pointer;
}
.lab-card img {
  width: 58%;
  margin-bottom: 12px !important;
}
.lab-card h4 {
  font-size: 16px;
  font-weight: 600;
}
.lab-card p {
  font-size: 14px;
}
.lab-image {
  display: flex;
  justify-content: start;
  align-items: center;
  padding-left: 1rem;
}
.lab-image img {
  width: 73%;
  height: auto;
  object-fit: cover;
  border-bottom: 1px solid #eee;
}

.lab-details {
  padding: 1rem;
  padding-top: 12px;
}

.lab-name {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #333;
}

.lab-price {
  font-size: 15px;
  font-weight: 600;
  color: #333333;
  margin-bottom: 0.25rem;
}

.lab-time {
  font-size: 0.95rem;
  color: #3f3333;
  font-weight: 600;
  margin-bottom: 0;
}
.lab-card.selected-lab {
  border: 1px solid #08204a;
  background-color: #09214b14;
}

.pm-modal .modal-content {
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(19, 35, 47, 0.08);
  padding: 0;
}

.pm-modal .modal-header {
  border-bottom: none;
  padding: 1rem 1.25rem 0;
}

.pm-modal .modal-title {
  font-weight: 600;
  font-size: 1.1rem;
  color: #7b0000;
}

.pm-modal .modal-body {
  padding: 0 1.25rem 1rem;
}

.pm-profile-list {
  max-height: 400px; /* change as needed */
  overflow-y: auto;
  margin-top: 0.5rem;
  padding-right: 6px; /* room for scrollbar */
}
.pm-profile-link {
  cursor: pointer;
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #b7b7b7;
}
.pm-profile-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 6px;
  border-bottom: 1px solid #b7b7b7;
  transition: background 0.12s ease;
}
.pm-profile-item:last-child {
  border-bottom: none;
}

.pm-profile-item:hover {
  background: #fbfdff;
}

.pm-avatar {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  font-weight: 500;
  background: #e6e6e6;
  border: 1px solid #aaaaaa;
  color: #0b5ed7;
  border-radius: 50%;
  flex: 0 0 44px;
}
.pm-avatar i {
  color: #891b1b;
}
.pm-name {
  font-size: 0.98rem;
  color: #111827;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.pm-footer {
  border-top: none;
  padding: 0.75rem 1.25rem 1.25rem;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.pm-remove-btn {
  border-radius: 8px;
  padding: 0.45rem 0.9rem;
}

/* Subtle custom scrollbar for WebKit */
.pm-profile-list::-webkit-scrollbar {
  width: 8px;
}
.pm-profile-list::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.08);
  border-radius: 6px;
}

.profile-container {
  margin-top: 50px;
  margin-bottom: 50px;
  /* background: #ffffff;
  border-radius: 16px;
  box-shadow: 0px 0px 11px -6px;
  padding: 30px;
  margin-top: 50px;
  margin-bottom: 50px;
  border: 1px solid #cbcbcb; */
}
.profile-header {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 25px;
}
.profile-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: linear-gradient(135deg, #595959, #d0d0d0);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 600;
  font-size: 28px;
}
.profile-name {
  font-size: 1.5rem;
  font-weight: 600;
  color: #2e2e2e;
}
.profile-details .detail-item {
  margin-bottom: 10px;
  font-size: 0.95rem;
  color: #555;
}
.profile-details .detail-item strong {
  width: 100px;
  display: inline-block;
  color: #333;
}
.reports-section {
  background: #7b00001c;
  border: 1px solid #d2d2d2;
  border-radius: 12px;
  padding: 20px;
}
.reports-section h5 {
  font-weight: 600;
  margin-bottom: 15px;
  color: #313131;
}
.report-item {
  position: relative;
  cursor: pointer;
  padding: 12px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #e4e9f2;
  margin-bottom: 12px;
  transition: 0.2s;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.report-item .pdf-btn {
  position: absolute;
  right: 11px;
  top: 50%;
  transform: translate(0px, -50%);
  background-color: #242424;
  color: white;
  padding: 5px 12px;
  border-radius: 6px;
  font-size: 13px;
  text-decoration: none;
}
.report-item:hover {
  border-color: #7b000047;
  background: #e7faff;
}
.report-title {
  font-weight: 500;
  color: #333;
}
.report-date {
  font-size: 0.85rem;
  color: #4f4f4f;
  font-weight: 500;
  margin-right: 116px;
}
.profile-details th {
  font-weight: 600;
  color: #333;
  background-color: #efefef;
  border: 1px solid #c5c5c5;
  padding: 10px 20px;
}
.profile-details td {
  border: 1px solid #c5c5c5;
  padding: 10px 20px;
}
.order-tracking-steps {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin: 30px auto;
  position: relative;
}
.order-tracking-steps::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 4px;
  background: #e9ecef;
  transform: translateY(-50%);
  z-index: 1;
}
.order-step {
  position: relative;
  z-index: 2;
  text-align: center;
  /* flex: 1; */
  background-color: white;
  padding: 0px 14px;
}
.order-step .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 18px;
  margin-bottom: 8px;
  background: #e9ecef;
  color: #6c757d;
}
.order-step.done .icon {
  background: #198754;
  color: #fff;
}
.order-step.active .icon {
  background: #7b0000;
  color: #fff;
}
.order-step.disabled .icon {
  background: #e9ecef;
  color: #adb5bd;
}
.order-step p {
  font-size: 14px;
  margin: 0;
  color: #495057;
}
.order-step.active p {
  font-weight: 600;
  color: #7b0000;
}

/* Small box */
.psc-check-box {
  padding: 5px 17px;
  background-color: #ffffff;
  color: #161616;
  text-align: start;
  cursor: pointer;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  font-family: "Poppins";
  border: 1px solid #c7c7c7;
  transition: background 0.3s;
  line-height: 17px;
  margin-left: 22px;
  box-shadow: 0px 0px 6px -3px black;
}

/* Overlay */
.psc-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 500;
}

/* Popup form */
.psc-popup-form {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
  padding: 16px 20px 12px 20px;
  z-index: 1000;
  transition: all 0.3s ease-in-out;
  max-width: 368px;
}

.psc-popup-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  padding-bottom: 7px;
  border-bottom: 1px solid #9e9e9e;
}

.psc-popup-header h3 {
  margin: 0;
  font-size: 1.1rem;
  color: #333;
}

.psc-close-icon {
  font-size: 20px;
  cursor: pointer;
  color: #999;
  transition: color 0.3s;
}
.psc-close-icon:hover {
  color: #f44336;
}

.psc-form-group {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.psc-form-group label {
  flex: 0 0 120px;
  font-weight: bold;
  color: #333;
}

.psc-form-group input {
  flex: 1;
  padding: 8px 10px;
  border: 1px solid #9c9c9c;
  border-radius: 6px;
  font-size: 1rem;
}

.psc-check-btn {
  width: 100%;
  padding: 10px;
  background-color: #383838;
  color: white;
  border: none;
  border-radius: 50px;
  font-size: 14px;
  cursor: pointer;
  transition: background 0.3s;
  margin-left: 10px;
}

.psc-result {
  margin-top: 15px;
  font-weight: normal;
  text-align: start;
  font-size: 14px;
}
.payment-wrapper {
  background-color: #ffffff;
  border-radius: 10px;
  width: 100%;
  max-width: 400px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  text-align: center;
  margin-top: 25px;
}

.payment-title {
  font-size: 16px;
  font-weight: 600;
  color: #333;
  margin-bottom: 20px;
  text-align: start;
}

.payment-options {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.payment-option {
  display: flex;
  align-items: center;
  flex: 1;
}

.payment-radio {
  display: none;
}

.payment-label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 16px;
  color: #333;
  padding: 10px;
  border: 1px solid #b0b0b0;
  border-radius: 8px;
  transition: all 0.3s ease;
  width: 100%;
  justify-content: center;
}

.payment-radio:checked + .payment-label {
  border-color: #4caf50;
  background-color: #e1f9e6;
}

.payment-radio:checked + .payment-label .payment-icon {
  border-color: #4caf50;
  background-color: #4caf50;
}

.payment-icon {
  height: 17px;
  width: 17px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
  border: 2px solid #ddd;
  transition: background-color 0.3s ease;
}

.online-icon {
  background-color: #4caf50;
}

.cod-icon {
  background-color: #dc3545;
}

.payment-text {
  font-weight: 500;
  font-size: 14px;
}

.payment-submit {
  background-color: #4caf50;
  color: white;
  border: none;
  padding: 15px;
  width: 100%;
  border-radius: 8px;
  font-size: 18px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.payment-submit:hover {
  background-color: #45a049;
}

.order-history-container {
  /* margin: 40px auto; */
  background-color: #fff;
  padding: 25px 30px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
  font-family: "Segoe UI", sans-serif;
  border: 1px solid #cacaca;
}

.order-history-title {
  font-size: 20px;
  color: #444444;
  font-weight: 600;
  margin-bottom: 25px;
  border-bottom: 1px solid #c6c6c6;
  padding-bottom: 10px;
}

.order-card {
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 15px 20px;
  background-color: #f9f9f9;
}

.order-header {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  color: #555;
  margin-bottom: 10px;
}

.order-date {
  font-weight: 500;
  color: #6c757d;
}

.order-body {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}

.order-info {
  flex: 1 1 50%;
  font-size: 15px;
}

.order-amount {
  font-size: 16px;
  font-weight: 600;
  color: #2d3748;
  margin-top: 10px;
}

.order-actions {
  margin-top: 10px;
}

.status-completed {
  color: green;
  font-weight: 500;
}

.status-pending {
  color: orange;
  font-weight: 500;
}

.status-cancelled {
  color: red;
  font-weight: 500;
}
#overall-lab-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0px 15px;
}
.hero-title{
font-size: 20px;
    display: block;
    margin-bottom: 18px;
    color: #7b0000;
    font-weight: bold;
}
