/*
Theme Name: CIA Strategies Theme
Theme URI: https://ciastrategies.com/
Version: 1.0
Author: <a href="http://www.thrivethemes.com">Thrive Themes</a>
Description: Fully customizable, front end theme and template editing for WordPress has arrived! 
Template: thrive-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, custom-everything
*/

/* Pre-hide list items only when the animation script is active.
   If JS fails, the class is never added and content stays visible. */
html.cia-anim .cia-list .thrv-styled-list-item {
  opacity: 0;
}

/* Compositor hint — GSAP clears this after the timeline completes. */
.cia-list .thrv-styled-list-item {
  will-change: transform, opacity;
}

/* Thrive often injects smooth scrolling, which interferes with GSAP scroll work. */
html {
  scroll-behavior: auto !important;
}

#go-top-btn {
  position: fixed;
  bottom: 32px;
  right: 32px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #102140;
  color: #ffffff;
  border: 2px solid rgba(57, 152, 170, 0.35);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  z-index: 9999;
  box-shadow: 0 8px 24px rgba(16, 33, 64, 0.35),
              0 2px 6px rgba(0, 0, 0, 0.12);

  /* Hidden state */
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px) scale(0.85);

  /* Transition every animated property, not just background */
  transition: opacity 0.35s ease,
              visibility 0.35s ease,
              transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
              background 0.3s ease,
              border-color 0.3s ease,
              box-shadow 0.3s ease;
}

/* Visible state - add this class via JS on scroll */
#go-top-btn.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

#go-top-btn:hover {
  background: #3998aa;
  border-color: rgba(255, 255, 255, 0.45);
  transform: translateY(-4px) scale(1.06);
  box-shadow: 0 14px 32px rgba(57, 152, 170, 0.45),
              0 4px 10px rgba(16, 33, 64, 0.25);
}

#go-top-btn:active {
  background: #2b7a89;
  transform: translateY(-1px) scale(0.97);
  box-shadow: 0 6px 16px rgba(57, 152, 170, 0.35);
}

/* Keyboard focus ring for accessibility */
#go-top-btn:focus-visible {
  outline: 3px solid #3998aa;
  outline-offset: 4px;
}

/* Two ripple rings that expand and fade out on loop */
#go-top-btn::before,
#go-top-btn::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #3998aa;
  opacity: 0;
  pointer-events: none;
}

#go-top-btn:hover::before {
  animation: goTopRipple 1.8s ease-out infinite;
}

/* Second ring starts halfway through for a continuous in-out feel */
#go-top-btn:hover::after {
  animation: goTopRipple 1.8s ease-out 0.9s infinite;
}

@keyframes goTopRipple {
  0% {
    transform: scale(1);
    opacity: 0.55;
  }
  70% {
    opacity: 0.15;
  }
  100% {
    transform: scale(1.65);
    opacity: 0;
  }
}

/* Respect users who prefer less motion */
@media (prefers-reduced-motion: reduce) {
  #go-top-btn,
  #go-top-btn:hover,
  #go-top-btn:active {
    transition: opacity 0.2s ease, visibility 0.2s ease;
    transform: none;
  }
  #go-top-btn:hover::before,
  #go-top-btn:hover::after {
    animation: none;
  }
}

.sector-tabs ul.tve_clearfix li{
    justify-content: flex-end;
	justify-content: left !important;
}
.sector-tabs ul.tve_clearfix > li {
    counter-increment: tab-counter;
    position: relative;
}

.sector-tabs ul.tve_clearfix > li::before {
    content: counter(tab-counter, decimal-leading-zero) !important;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    color: #102140;
}

.sector-tabs ul.tve_clearfix > li.tve-state-expanded::before {
    color: #102140;
}

.sector-tabs ul.tve_clearfix > li .tve_tab_title {
    padding-left: 60px;
}

/* Reset FAQ counter */
.cia-faq {
    counter-reset: faq-counter;
}

/* Increment for every FAQ */
.cia-faq .tve_faq {
    counter-increment: faq-counter;
    position: relative;
}

/* FAQ title */
.cia-faq .tve_faqB {
    position: relative;
    padding-left: 60px;
}

/* Number */
.cia-faq .tve_faqB::before {
    content: counter(faq-counter, decimal-leading-zero) !important;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);

    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    color: #102140;
}

/* Open FAQ */
.cia-faq .tve_faq.tve-state-expanded .tve_faqB::before {
    color: #e65332;
}
:not(#tve) [data-css="tve-u-19ff1c26fca"] .thrv_toggle_title:hover{
	padding-left: 60px;
}
:not(#tve) [data-css="tve-u-19ff1c26fca"] .thrv_toggle_title:hover:not(.tve-state-expanded){
	padding-left: 60px;
}
:not(#tve) [data-css="tve-u-19ff1c26fca"] .thrv_toggle_title:hover {
        padding-left: 60px !important;
    }