.text_box_overflow {
    overflow: hidden;
    width: 100%;
}
/* Scroll Animations */

.slide-left {
  opacity: 0;
  transform: translateX(-100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}

.slide-right {
  opacity: 0;
  transform: translateX(100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}
.slide-top {
  opacity: 0;
  transform: translateY(-100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}

.slide-bottom {
  opacity: 0;
  transform: translate3d(0px, 150px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.4s ease-in, transform 0.9s ease-in;
  transform-style: preserve-3d;
}

.slide-bottom-full {
  opacity: 0;
  transform: translate3d(0px, 100%, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.hcani3 {
  opacity: 0;
  transform: translate3d(0px, -162px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.hcani4 {
  opacity: 0;
  transform: translate3d(70px, -162px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.hcani5 {
  opacity: 0;
  transform: translate3d(-200px, 148px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.hcani1 {
  opacity: 0;
  transform: translate3d(0px, -272px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;}
  

.hcani2 {
  opacity: 0;
  transform: translate3d(0px, 152px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
  transition: opacity 0.6s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}


.radial_shots1careers {
  opacity: 0;
  position: absolute;
  top: 100px;
  left: 0px;
  transform: rotate(-13deg) translate3d(-180px, -50px, 0px);
  transition: opacity 0.3s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots3careers {
  opacity: 0;
  position: absolute;
  right: -260px;
  bottom: 40px;
  transform: rotate(27deg) translate3d(120px, 0px, 0px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots1 {
  opacity: 0;
  position: absolute;
  top: 0;
  left: -100px;
  transform: rotate(-13deg) translate3d(-180px, -50px, 0px);
  transition: opacity 0.3s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots2 {
  opacity: 0;
  position: absolute;
  right: -100px;
  top: 10px;
  transform: rotate(30deg) translate(90px, -70px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots3 {
  opacity: 0;
  position: absolute;
  right: -120px;
  bottom: 40px;
  transform: rotate(27deg) translate3d(120px, 0px, 0px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.radial_shots4 {
  opacity: 0;
  position: absolute;
  left: 0px;
  bottom: 180px;
  transform: rotate(-20deg) translate3d(-200px, 0px, 0px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}





.radial_shots1aboutPage {
  opacity: 0;
  position: absolute;
  top: 180px;
  left: 0;
  transform: rotate(-13deg) translate3d(-180px, -50px, 0px);
  transition: opacity 0.3s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots2aboutPage {
  opacity: 0;
  position: absolute;
  right: 90px;
  top: 140px;
  transform: rotate(30deg) translate(90px, -70px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.radial_shots3aboutPage {
  opacity: 0;
  position: absolute;
  right: 0px;
  top: 370px;
  transform: rotate(27deg) translate3d(120px, 0px, 0px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}

.radial_shots4aboutPage {
  opacity: 0;
  position: absolute;
  left: 90px;
  bottom: 310px;
  transform: rotate(-20deg) translate3d(-200px, 0px, 0px);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}













.gpanims {
  opacity: 0;
  transform: scale3d(0, 0, 0);
  transition: opacity 0.5s ease-in, transform 0.8s ease-in;
  transform-style: preserve-3d;
}
.slide-in {
  opacity: 1;
  transform: none;
}




.slide-left-onload {
  opacity: 0;
  transform: translateX(-100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}

.slide-right-onload {
  opacity: 0;
  transform: translateX(100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}
.slide-top-onload {
  opacity: 0;
  transform: translateY(-100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}

.slide-bottom-onload {
  opacity: 0;
  transform: translateY(100px);
  transition: opacity 0.9s ease-in, transform 0.9s ease-in;
}


.slide-in-onload {
  opacity: 1;
  transform: none;
}



.Reveal-after-Anim {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease-in, transform 0.8s ease-in;
}

.Reveal-After-in {
  opacity: 1;
  transform: translateY(0);
}




.Reveal-after-Blocks1 {
  -webkit-animation: moving 2s infinite  alternate;
  animation: moving 2s infinite  alternate;
}
.Reveal-after-Blocks1 {
  -webkit-animation: moving 2s infinite  alternate;
  Reveal-After-inover 2s infinite  alternate;
}

@-webkit-keyframes moving {
  0% { transform: translateY(5px); }
  100% Reveal-After-inform: translateY(-10px); 
}

@keyframes moving {
  0% { transform: translateY(5px); }
  100% { transform: translateY(-10px); }
}


.gpanchorHover_style1, .gpanchorHover_style1 > span {
  position: relative;
  color: inherit;
  text-decoration: none;
  
}
.gpanchorHover_style1:before, .gpanchorHover_style1:after, .gpanchorHover_style1 > span:before, .gpanchorHover_style1 > span:after {
  content: '';
  position: absolute;
  transition: transform .5s ease;
}
.gpanchorHover_style1:hover {
  color: #00AEEF !important;
}
.gpanchorHover_style1 {
  display: inline-flex;
  
  overflow: hidden;
}
.gpanchorHover_style1:before {
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: #00AEEF;
  transform: translateX(-100%);
}
.gpanchorHover_style1:hover:before {
  transform: translateX(0);
}




.gpanchorHover_style1white, .gpanchorHover_style1white > span {
  position: relative;
  color: inherit;
  text-decoration: none;
  
}
.gpanchorHover_style1white:before, .gpanchorHover_style1white:after, .gpanchorHover_style1white > span:before, .gpanchorHover_style1white > span:after {
  content: '';
  position: absolute;
  transition: transform .5s ease;
}
.gpanchorHover_style1white:hover{
  color: #fff;
}
.gpanchorHover_style1white {
  display: inline-flex;
  
  overflow: hidden;
}
.gpanchorHover_style1white:before {
  left: -1px;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  transform: translateX(-100%);
}
.gpanchorHover_style1white:hover:before {
  transform: translateX(0);
}



/*--- btn_trans_style ---*/
.btn_trans_style:hover
{
  background-color: #005A9C;
  transition: 0.3s ease-out;
}
.btn_trans_style::before {
  background-color: #005A9C;
  transition: 0.3s ease-out;
  border-radius: 200px;
}
.btn_trans_style span {
  
  transition: 0.2s;
}  
.btn_trans_style:hover span {
  color: rgb(255,255,255);
  transition: 0.2s 0.1s;
}




.btnonbghover_Style:hover {
  background-color: #fff;
  transition: 0.3s ease-out;
}

.btnonbghover_Style::before {
  background-color: #fff;
  transition: 0.3s ease-out;
  border-radius: 200px;
}
.btnonbghover_Style span {
  
  transition: 0.2s;
}  
.btnonbghover_Style:hover span {
  color: #005A9C;
  transition: 0.2s 0.1s;
}

.btn_onbg_style:hover {
  background-color: #fff;
  transition: 0.3s ease-out;
}

.btn_onbg_style::before {
  background-color: #fff;
  transition: 0.3s ease-out;
  border-radius: 200px;
}
.btn_onbg_style span {
  
  transition: 0.2s;
}  
.btn_onbg_style:hover span {
  color: #005A9C;
  transition: 0.2s 0.1s;
}

/* 9. gp_trans_hover_right */
.gp_buttons.gp_trans_hover_right::before {
  top: 0; bottom: 0; left: 0; 
  height: 100%; width: 0%;
}
.gp_buttons.gp_trans_hover_right:hover::before {
  width: 100%;
}
/* Buttons End */



.gp_buttons:active, .gp_buttons:hover, .gp_buttons:focus {
  outline: 0!important;
  outline-offset: 0;
}
.gp_buttons::before,
.gp_buttons::after {
  position: absolute;
  content: "";
}
.gp_buttons {
  position: relative;
  overflow: hidden;
}
.gp_buttons span {         
  position: relative;
 
  transition: 0.3s;
}



.gpanchorHover_style1, .gpanchorHover_style1 > span {
  position: relative;
  color: inherit;
  text-decoration: none;
  
}
.gpanchorHover_style1:before, .gpanchorHover_style1:after, .gpanchorHover_style1 > span:before, .gpanchorHover_style1 > span:after {
  content: '';
  position: absolute;
  transition: transform .5s ease;
}
.gpanchorHover_style1:hover {
  color: #00AEEF !important;
}
.gpanchorHover_style1 {
  display: inline-flex;
  
  overflow: hidden;
}
.gpanchorHover_style1:before {
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: #00AEEF;
  transform: translateX(-100%);
}
.gpanchorHover_style1:hover:before {
  transform: translateX(0);
}



.gpc_product_box:hover {
  background: #005A9C;
}

.gpc_product_box:hover h2 {
  color: #fff;
}


.swiper-button-prev:hover {
  background-color: #005A9C;
  background-image: url(base_icons/lefticow.png) !important;
}
.swiper-button-next:hover {
  background-color: #005A9C;
  background-image: url(base_icons/righticos.png) !important;
}



.banner-image-wrap {
  overflow: hidden;
}

.banner-image {
  width: 100%;
  height: auto;
  transform: scale(1);
  animation: bannerZoom 3s ease-out forwards;
}

@keyframes bannerZoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1); /* zoom in */
  }
}



.slide-bottom-banner {
  
  opacity: 0;
  filter: blur(8px);
  transform: translateY(50px) rotateX(-20deg);
  transform-origin: bottom;
  will-change: transform, opacity, filter;
}

/* active state */
.slide-bottom-banner.show {
  animation: blurSlideUp 1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes blurSlideUp {
  0% {
    opacity: 0;
    filter: blur(8px);
    transform: translateY(50px) rotateX(-20deg);
  }
  100% {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0) rotateX(0deg);
  }
}
.banner-heading {
  perspective: 1000px;
}


.slide-main-headings {
  opacity: 0;
  filter: blur(8px);
  transform: translateY(-50px);
  will-change: transform, opacity, filter;
}

.slide-main-headings.show {
  animation: blurDown 1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes blurDown {
  0% {
    opacity: 0;
    filter: blur(8px);
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0);
  }
}

.slide-left,
.aof-para,
.aof-image {
  opacity: 0;
  filter: blur(6px);
  transform: translateY(40px);
  will-change: transform, opacity, filter;
}

.reveal.show .slide-left,
.reveal.show .aof-para,
.reveal.show .aof-image {
  animation: blurUp 0.9s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes blurUp {
  from {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0);
  }
}

.aof-footer {
  perspective: 800px;
  
}

.aof-footer .split-word {
  display: inline-block;
  opacity: 0;
  filter: blur(1.5px); /* 🔥 very subtle */
  transform: translateY(-25px);
  will-change: transform, opacity, filter;
}

.aof-footer.show .split-word {
  animation: blurDownWord 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes blurDownWord {
  from {
    opacity: 0;
    filter: blur(1.5px);
    transform: translateY(-25px);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0);
  }
}

.bridgeset-block {
  opacity: 0;
  filter: blur(6px);
  transform: translateX(-40px);
  will-change: transform, opacity, filter;
}

/* when visible */
.bridgeset-block.show {
  animation: bridgeReveal 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes bridgeReveal {
  from {
    opacity: 0;
    filter: blur(6px);
    transform: translateX(-40px);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: translateX(0);
  }
}

.defense-image img {
  opacity: 0;
  filter: blur(8px);
  transform: scale(0.8);
  will-change: transform, opacity, filter;
}

.defensibility-section.show .defense-image img {
  animation: imageReveal 1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes imageReveal {
  from {
    opacity: 0;
    filter: blur(8px);
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: scale(1);
  }
}

.regulatory-accordion .accordion-item {
  opacity: 0;
  filter: blur(6px);
  transform: translateY(40px);
  will-change: transform, opacity, filter;
}

.defensibility-section.show .accordion-item.show {
  animation: accReveal 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes accReveal {
  from {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0);
  }
}
.defense-image img {
  transform-origin: center;
}

.diverse-panel {
  opacity: 0;
  filter: blur(6px);
  transform: translateY(40px);
  will-change: transform, opacity, filter;
}

/* when visible */
.diversity-engine.show .diverse-panel.show {
  animation: diversityReveal 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes diversityReveal {
  from {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    filter: blur(0px);
    transform: translateY(0);
  }
}
.text-split-anim {
  opacity: 0;
}
.text-split-anim.split-ready {
  opacity: 1;
}
/* Initial state */
.retinal-data .text-col,
.retinal-data .image-col img,
.retinal-data .banner-button,
.retinal-data .small-overview {
  opacity: 0;
}

/* Transforms */
.retinal-data .text-col {
  transform: translateX(-40px);
  filter: blur(6px);
}

.retinal-data .image-col img {
  transform: scale(0.8);
  filter: blur(6px);
}

.retinal-data .banner-button,
.retinal-data .small-overview {
  transform: translateY(40px);
  filter: blur(6px);
}

/* Active state */
.retinal-data.show .text-col,
.retinal-data.show .image-col img,
.retinal-data.show .banner-button,
.retinal-data.show .small-overview {
  opacity: 1;
  filter: blur(0);
  transform: translate(0) scale(1);
  transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}


.metadata-row {
  opacity: 0;
  transform: translateY(40px);
  filter: blur(6px);
  transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.metadata.show .metadata-row {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

/* Initial state */
.footer-main {
  overflow: hidden;
}

.logo-footer img {
  opacity: 0;
  transform: scale(0.8);
  transition: all 0.8s ease;
}

.logo-copyright {
  opacity: 0;
  transform: translateX(-40px);
  filter: blur(6px);
  transition: all 0.8s ease;
}

/* Active state */
footer.show .logo-footer img {
  opacity: 1;
  transform: scale(1);
}

footer.show .logo-copyright {
  opacity: 1;
  transform: translateX(0);
  filter: blur(0);
}