html {
  scroll-behavior: smooth;
}

@media (min-width: 1200px) {
    h1.hero-heading {
        font-size: 40px;
    }

    section.sarah {
        margin-top: -200px
    }
}

.btn-rounded {
    border-radius: 50px;
}

.color-gradient {
    background: linear-gradient(76.56deg, #E26234 0%, #0B4FC9 51%, #001B3E 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
} 


.animate-1-100 { animation: gradient-animation 1s linear infinite; background-size: 100% auto; }
.animate-3-200 { animation: gradient-animation 3s linear infinite; background-size: 200% auto; }
.animate-9-200 { animation: gradient-animation 9s linear infinite; background-size: 200% auto; }
.animate-3-300 { animation: gradient-animation 3s linear infinite; background-size: 200% auto; }


@keyframes gradient-animation {
    0% {
        background-position: 200% 50%; /* Starting position of the gradient */
    }
    100% {
        background-position: 0% 50%; /* Ending position of the gradient */
    }
}

.btn-gradient {
  position: relative;
  cursor: pointer;
  border: none;
  outline: none;
  color: #fff;
  font-size: 16px;
  padding: 8px 20px;
  border-radius: 32px;
  background: #111; /* Inner background */
  z-index: 1;
}

/* Gradient border via pseudo-element */
.btn-gradient::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border-radius: inherit;
  background: linear-gradient(90deg, #0B4FC9, #E26234, #0B4FC9);
  background-size: 200% 100%;
  z-index: -1;
  animation: border-slide 3s linear infinite;
}

/* Pause on hover */
.btn-gradient:hover::before {
  animation-play-state: paused;
}

/* Animation for gradient border */
@keyframes border-slide {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}


/* Hover effect */
.btn-gradient:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.25);
}

/* Overlay for hover effect */
.btn-gradient::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #0b4ec985; /* solid hover color */
    transition: left 0.4s ease;
    border-radius: inherit;
    z-index: -1;
}

/* Hover state */
.btn-gradient:hover::after {
    left: 0;
}


.navbar {
    border-bottom: 1px solid var(--bs-gray-300);
}

.bg-gradient-skyblue {
    box-sizing: border-box;
    position: absolute;
    background: linear-gradient(180deg, #C5E6FD 0%, #F0F6FF 100%);
    border: 1px solid rgba(17, 17, 17, 0.1);
    box-shadow: 0px 6px 12px -2px rgba(0, 0, 0, 0.04);
    border-radius: 24px;
}

.bg-gradient-pinkish {
    box-sizing: border-box;
    position: absolute;
    background: linear-gradient(180deg, #FDE7C2 0%, #FFF8ED 100%);
    border: 1px solid rgba(17, 17, 17, 0.1);
    box-shadow: 0px 6px 12px -2px rgba(0, 0, 0, 0.04);
    border-radius: 24px;
 
}

.bg-gradient-blue {
    box-sizing: border-box;
    position: absolute;
    box-shadow: 0px 6px 12px -2px rgba(0, 0, 0, 0.04);
    border-radius: 24px;
 
    background: linear-gradient(180deg, #045FF1 0%, #85D3FF 100%);
    border: 1px solid rgba(17, 17, 17, 0.1);
}

.bg-gradient-pinkish  h2, 
.bg-gradient-skyblue  h2{
    color: #1d1d1d !important;
}

.bg-gradient-pinkish  p, 
.bg-gradient-skyblue  p{
    color: #1d1d1d !important;
}

.step-section.bg-dark .modules .border.border-primary {
  border-color: #ffffff !important;
  color: #fff !important;
}
 

.step-section.bg-gradient-blue .modules .border-primary {
  border-color: #ffffff !important;
  color: #fff !important;
}
 

/* Sticky scroll animation styles */
.step-section {
	min-height: 100vh;
	transition: all 0.3s ease;
    opacity: 1;
}

.step-section:not(:first-child) {
    -webkit-box-shadow: -1px -68px 83px -50px rgba(66, 68, 90, 0.555);
    -moz-box-shadow: -1px -68px 83px -50px rgba(66, 68, 90, 0.404);
    box-shadow: -1px -68px 83px -50px rgba(66, 68, 90, 0.493);
}

.step-sticky {
	position: sticky !important;
	top: 65px;
}

.step-passed {
	position: relative !important;
}

.step-active {
	transform: translateY(0);
	opacity: 1;
}


/* Animation for content visibility */
.step-content {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.6s ease;
}

.step-content.visible {
	opacity: 1;
	transform: translateY(0);
}

/* Last item should not be sticky */
.step-section:last-child {
	position: relative !important;
	min-height: auto;
}

/**
Sara AI cards
*/

.bg-sara-card { 
    background: linear-gradient(180deg, #C5E6FD 0%, #F0F6FF 100%);
    border-radius: 24px;
}
 
@media (max-width: 700px) {
   

    section.sarah {
        margin-top: -100px
    }

    .sarah-bot {
        margin-top: 150px
    }
}


/**
Home Page
*/
section.with-without-section .card-without .card-header, 
section.with-without-section .card-without .card-body {
    background: #F5F5F7;
}

section.with-without-section .card-with .card-header, 
section.with-without-section .card-with .card-body {
    background: #FAFBFE;
}

section.with-without-section .text-secondary {
    color: #A2A1A1 !important;
}

section.with-without-section .text-warning {
    color: #E26234 !important;
}

.card-gradient {
  position: relative;
  border-radius: 25px; /* match your design */
  overflow: hidden; /* ensure corners are clipped */
  padding: 1rem; /* spacing inside */
  background: white; /* card content background */
  z-index: 1;
}

.card-gradient::after {
    content: "";
    border-radius: inherit;
}
.card-gradient::after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 5px; /* border thickness */
  border-radius: inherit;
  background: linear-gradient(
    262deg,
    #f58220 0%,
    #0b4fc9 52%,
    #e66410 100%
  );
  -webkit-mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: -1;
}

.gradient-bullet {
  background: linear-gradient(
    262deg,
    #f58220 0%,
    #0b4fc9 52%,
    #e66410 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.home-years-card {
    background: #0D43EC;
    background: linear-gradient(125deg, rgba(13, 67, 236, 1) 0%, rgba(13, 67, 236, 1) 58%, rgba(2, 41, 178, 1) 59%);
}

.home-years-card .border-bottom {
    border-color: #c0c0c0 !important;
    padding-bottom: 0.5rem;
    line-height: 1.5rem;
}

.admin-bar {
    z-index: 999 !important;
}

.admin-bar a{
    color: white;
}

ul.industry-bullets {
    list-style: none; /* Remove default bullets */
    padding-left: 1em; /* Optional: spacing for bullets */
}

ul.industry-bullets li::before {
    content: "\F134"; /* Example Unicode for a Bootstrap icon (optional) */
    font-family: "bootstrap-icons"; /* Make sure Bootstrap Icons font is loaded */
    display: inline-block;
    width: 1.2em;
    margin-left: -1.2em; /* Align icon */
    color: #007bff; /* Customize color */
    margin-right: 5px;
}


.ratio-4-8 {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3; 
    object-fit: cover;
    display: block;
}

.ratio-3-8 {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 2.25; 
    object-fit: cover;
    display: block;
}

 .max-line-3 {
   display: block;/* or inline-block */
    text-overflow: ellipsis;
    word-wrap: break-word;
    overflow: hidden;
    max-height: 4.5em;
 }

 .insight-card:hover {
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.25);
    transition: all ease-in-out 500ms;
 }

 .text-dim {
    color: var(--bs-gray-400);
 }

 
.pagination-primary-soft {
  border: none;
  padding: 4px;
  border-radius: 0.325rem;
}
.pagination-primary-soft .page-item {
  margin: 4px;
}
.pagination-primary-soft .page-link {
  border: transparent;
  border-radius: 0.325rem !important;
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.1);
}

.pagination-primary-soft .page-link:hover {
  z-index: 2;
  color: var(--bs-white);
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.pagination-primary-soft .page-item.active .page-link {
  color: var(--bs-white);
  background-color: var(--bs-primary);
}



.back-top {
  cursor: pointer;
  position: fixed !important;
  bottom: 40px;
  right: 40px;
  display: block;
  z-index: 99;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background: rgba(var(--bs-primary-rgb), 0.1);
  color: var(--bs-primary);
  border-radius: 10%;
  width: 52px;
  height: 52px;
  line-height: 52px;
  text-align: center;
}
.back-top i {
  font-size: 1.6rem;
  vertical-align: middle;
}
.back-top:hover {
  background: var(--bs-primary);
  color: var(--bs-white);
}
.back-top.back-top-show {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

@media (max-width: 767.98px) {
  .back-top {
    bottom: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  .back-top i {
    font-size: 1rem;
  }
}


.anim-canvas {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  padding: 0px;
}

lottie-player svg {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover; /* or contain */
}


.image-hero-banner {
  background: linear-gradient(89.75deg, rgba(11, 79, 201, 0.14) -1.04%, rgba(0, 27, 62, 0.14) 50.86%, rgba(226, 98, 52, 0.14) 102.75%);
  box-shadow: inset 1px 1px 0px rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(1.5px);
  /* Note: backdrop-filter has minimal browser support */
  border-radius: 28px 28px 0px 0px;
  padding:15px;
}


#requestForDemo .form-control {
  padding: 8px;
}


.btn-primary-soft {
  color: #066ac9;
  background-color: rgba(6, 106, 201, 0.1);
}
.btn-primary-soft:active, .btn-primary-soft:hover {
  color: #fff !important;
  background-color: #066ac9 !important;
  border-color: #066ac9 !important;
}
.btn-primary-soft:focus {
  color: #066ac9;
  background-color: rgba(6, 106, 201, 0.1);
  border-color: transparent;
}

.btn-white-soft {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
}
.btn-white-soft:active, .btn-white-soft:hover {
  color: #000 !important;
  background-color: #fff !important;
  border-color: #fff !important;
}
.btn-white-soft:focus {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-color: transparent;
}

.btn-secondary-soft {
  color: #9a9ea4;
  background-color: rgba(154, 158, 164, 0.1);
}
.btn-secondary-soft:active, .btn-secondary-soft:hover {
  color: #fff !important;
  background-color: #9a9ea4 !important;
  border-color: #9a9ea4 !important;
}
.btn-secondary-soft:focus {
  color: #9a9ea4;
  background-color: rgba(154, 158, 164, 0.1);
  border-color: transparent;
}

.btn-success-soft {
  color: #0cbc87;
  background-color: rgba(12, 188, 135, 0.1);
}
.btn-success-soft:active, .btn-success-soft:hover {
  color: #fff !important;
  background-color: #0cbc87 !important;
  border-color: #0cbc87 !important;
}
.btn-success-soft:focus {
  color: #0cbc87;
  background-color: rgba(12, 188, 135, 0.1);
  border-color: transparent;
}

.btn-info-soft {
  color: #17a2b8;
  background-color: rgba(23, 162, 184, 0.1);
}
.btn-info-soft:active, .btn-info-soft:hover {
  color: #fff !important;
  background-color: #17a2b8 !important;
  border-color: #17a2b8 !important;
}
.btn-info-soft:focus {
  color: #17a2b8;
  background-color: rgba(23, 162, 184, 0.1);
  border-color: transparent;
}

.btn-warning-soft {
  color: #f7c32e;
  background-color: rgba(247, 195, 46, 0.1);
}
.btn-warning-soft:active, .btn-warning-soft:hover {
  color: #000 !important;
  background-color: #f7c32e !important;
  border-color: #f7c32e !important;
}
.btn-warning-soft:focus {
  color: #f7c32e;
  background-color: rgba(247, 195, 46, 0.1);
  border-color: transparent;
}

.btn-danger-soft {
  color: #d6293e;
  background-color: rgba(214, 41, 62, 0.1);
}
.btn-danger-soft:active, .btn-danger-soft:hover {
  color: #fff !important;
  background-color: #d6293e !important;
  border-color: #d6293e !important;
}
.btn-danger-soft:focus {
  color: #d6293e;
  background-color: rgba(214, 41, 62, 0.1);
  border-color: transparent;
}

.btn-light-soft {
  color: #f5f7f9;
  background-color: rgba(245, 247, 249, 0.1);
}
.btn-light-soft:active, .btn-light-soft:hover {
  color: #000 !important;
  background-color: #f5f7f9 !important;
  border-color: #f5f7f9 !important;
}
.btn-light-soft:focus {
  color: #f5f7f9;
  background-color: rgba(245, 247, 249, 0.1);
  border-color: transparent;
}

.btn-dark-soft {
  color: #24292d;
  background-color: rgba(36, 41, 45, 0.1);
}
.btn-dark-soft:active, .btn-dark-soft:hover {
  color: #fff !important;
  background-color: #24292d !important;
  border-color: #24292d !important;
}
.btn-dark-soft:focus {
  color: #24292d;
  background-color: rgba(36, 41, 45, 0.1);
  border-color: transparent;
}

.btn-orange-soft {
  color: #fd7e14;
  background-color: rgba(253, 126, 20, 0.1);
}
.btn-orange-soft:active, .btn-orange-soft:hover {
  color: #fff !important;
  background-color: #fd7e14 !important;
  border-color: #fd7e14 !important;
}
.btn-orange-soft:focus {
  color: #fd7e14;
  background-color: rgba(253, 126, 20, 0.1);
  border-color: transparent;
}

.btn-purple-soft {
  color: #6f42c1;
  background-color: rgba(111, 66, 193, 0.1);
}
.btn-purple-soft:active, .btn-purple-soft:hover {
  color: #fff !important;
  background-color: #6f42c1 !important;
  border-color: #6f42c1 !important;
}
.btn-purple-soft:focus {
  color: #6f42c1;
  background-color: rgba(111, 66, 193, 0.1);
  border-color: transparent;
}

.btn-blue-soft {
  color: #1d3b53;
  background-color: rgba(29, 59, 83, 0.1);
}
.btn-blue-soft:active, .btn-blue-soft:hover {
  color: #fff !important;
  background-color: #1d3b53 !important;
  border-color: #1d3b53 !important;
}
.btn-blue-soft:focus {
  color: #1d3b53;
  background-color: rgba(29, 59, 83, 0.1);
  border-color: transparent;
}
