/* === Custom Overrides for Hover Styles === */

/* 1. Buttons on hover - change text/icon color to peridot on black */
.no-touch .hover-default:hover,
.no-touch .hover-circle:hover {
  color: #e6e200 !important;
  background-color: #000000 !important;
}

.no-touch .hover-default:hover i,
.no-touch .hover-circle:hover i {
  color: #e6e200 !important;
}

/* 2. Navbar links on hover - change text color to peridot */
.no-touch .menu-link:hover {
  color: #e6e200 !important;
}

/* 3. Text links - change underline color on hover to peridot */
.no-touch .text-link,
.no-touch .text-link.text-link-medium {
  text-decoration: none;
  position: relative;
}

/* .no-touch .text-link::after,
.no-touch .text-link.text-link-medium::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background-color: #e6e200;
  transition: background-color 0.3s ease;
} */

/* .no-touch .text-link:hover::after,
.no-touch .text-link.text-link-medium:hover::after {
  background-color: #e6e200 !important;
} */

/* 4. Navbar underlines (if applicable) */
/* .no-touch .menu-link {
  position: relative;
  text-decoration: none;
} */

/* .no-touch .menu-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 100%;
  height: 2px;
  background-color: transparent;
  transition: background-color 0.3s ease;
} */
/* 
.no-touch .menu-link:hover::after {
  background-color: #e6e200;
} */

/* Optional: also affect hover text-links */
/* .no-touch a:hover.link-small,
.no-touch a:hover.link-small-underline,
.no-touch a:hover.link-small-160lh {
  color: #e6e200 !important;
  border-bottom: 1px solid #e6e200 !important;
} */
.action__btn {
  display: flex;
  align-items: center; /* vertically center buttons */
  gap: 25px; /* space between buttons */
  flex-wrap: wrap; /* allow wrapping on very small screens */
  justify-content: center;
}

.red-border {
  border: red solid 1px;
}

.logo-text-header {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.2s cubic-bezier(0.77, 0, 0.175, 1);
  opacity: 0;
  transform: translateX(-20px);
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.2s cubic-bezier(0.77, 0, 0.175, 1), opacity 0.8s ease,
    transform 1s ease;
}
.logo:hover .logo-text-header,
.logo__link:hover .logo-text {
  clip-path: inset(0 0% 0 0);
  opacity: 1;
  transform: translateX(0);
  clip-path: inset(0 0% 0 0);
}

/* ------------------------------------------------*/
/* FAQ Styles Start */
/* ------------------------------------------------*/
.faq-lines {
  position: relative;
}

.faq-lines__item {
  position: relative;
  display: block;
}

.faq-lines__divider {
  position: relative;
  width: 100%;
  height: 1px;
  background-color: var(--stroke-elements);
}

.faq-lines__trigger {
  position: relative;
  padding: 3rem 0.4rem;
  color: var(--t-bright);
  overflow: hidden;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.faq-lines__trigger h4,
.faq-lines__trigger i {
  color: var(--t-bright);
  transition: all var(--_animspeed-medium) var(--_animbezier);
}

.faq-lines__trigger.active h4 {
  transform: translate(5rem, 0);
}

.faq-lines__trigger.active i {
  transform: rotate(45deg);
}

.faq-lines__answer {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.6s cubic-bezier(0.77, 0, 0.175, 1),
    opacity 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  padding: 0 0.4rem;
  color: var(--t-per-bright-light);
}

.faq-lines__item.open .faq-lines__answer {
  max-height: 500px; /* Adjust as needed */
  opacity: 1;
  margin-top: 2rem;
}
.faq-space {
  margin-top: 0.5em;
  margin-bottom: 1.5em;
}

/* ------------------------------------------------*/
/* FAQ Styles End */
/* ------------------------------------------------*/

#about .pre-offcanvas-grid-block:last-child,
#about .about-descr__btnholder {
  margin-bottom: 0;
  padding-bottom: 0;
}

#about.inner-grid-bottom {
  padding-bottom: 0;
}

/* ------------------------------------------------*/
/* Divider Video Start */
/* ------------------------------------------------*/

/* Existing styles – keep them */
.divider-video {
  position: relative;
  overflow: hidden;
  margin-top: 4em;
  border-radius: 2rem;
}

.divider-video .bg-video {
  border-radius: inherit;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translate(-50%, -50%);
  z-index: 0;
}

/* Add this for small screens */
@media (max-width: 768px) {
  .divider-video {
    height: auto;
  }

  .divider-video .bg-video {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
    height: auto;
    object-fit: contain; /* Or cover, depending on what looks better */
  }
}

/* ------------------------------------------------*/
/* Team Hover Styles */
/* ------------------------------------------------*/
.tools-cards__item .tools-cards__card {
  border: 2px solid var(--stroke-elements); /* keep default border */
  transition: border-color 0.3s ease;
}

.tools-cards__item:hover .tools-cards__card {
  border-color: #e6e200;
}

.tools-cards__item:hover .tools-cards__card svg {
  color: #e6e200;
  fill: #e6e200;
}

.icon-container svg {
  transition: color 0.3s ease, fill 0.3s ease;
  color: inherit;
  fill: currentColor;
}

/* ------------------------------------------------*/
/* Service Card Title */
/* ------------------------------------------------*/

.cards__title {
  /* Small screens */
  font-size: 3.4rem; /* ~32px at default 16px base */

  /* Medium screens */
  @media only screen and (min-width: 768px) {
    font-size: 3.4rem; /* ~40px */
  }

  /* Large screens */
  @media only screen and (min-width: 992px) {
    font-size: 4.8rem; /* ~48px */
  }

  /* XL screens */
  @media only screen and (min-width: 1200px) {
    font-size: 4.8rem; /* ~56px */
  }
}

/* For dark mode */
@media (prefers-color-scheme: dark) {
  .footer-logo {
    color: #fff;
  }
}

.headline__title {
    color: white; /* Set to white for maximum contrast calculation */
    mix-blend-mode: difference;
    
    /* Optional: Improves rendering on some browsers */
    position: relative;
    z-index: 1;
}