/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/
:root {
  --highlight-gradient: linear-gradient(to left, #D6FD6A, transparent);
  --core-black: #262626;
}
:root {
--white:  #fff;
 --mora-blue-gradient: linear-gradient(135deg, #EDEAFF 0%, #F9F8FF 100%);
  --mora-blue: #4822F4 !important;
  --dark-purple: #140058;
  --strategic-purple: #6556FF;
  --core-black: #262626;
  --invisible-tech: #D6FD6A;
  --light-grey: #777777;
--dark-grey: #565656;
  --off-white: #FBFbFb;
 --highlight-gradient: linear-gradient(to left, var(--invisible-tech), transparent);
--highlight-gradient-right: linear-gradient(to right, var(--invisible-tech), transparent);
--invisible-tech-rgb: rgba(214, 253, 106, 1); 
}
li:not([class]) {
        font-family: inter, sans-serif;
}

.hana-ai-subtitle{font-size: 1.5rem;}
@media (max-width: 765px) {
.hana-ai-subtitle{font-size: 1rem; !important}
}
.highlightPills {
width: fit-content;
  position: relative;
  z-index: 0
  overflow: hidden;

  /* Fondo translúcido */
  background-color: rgba(214, 253, 106, 0.08);

  /* Borde animado tipo glassmorphism */
  border: 2px solid transparent;
  background-image:
    linear-gradient(135deg, rgba(214, 253, 106, 0.6), transparent, var(--off-white)),
    linear-gradient(135deg, var(--invisible-tech), var(--off-white), var(--invisible-tech));
  background-origin: border-box;
  background-clip: padding-box, border-box;
  background-size: 300% 300%;
  background-position: 0% 50%;

  /* Animaciones suaves */
  animation: 
    borderFlow 3s ease-in-out infinite alternate;
   

  /* Glow fuerte */
  box-shadow:
    0 0 20px rgba(var(--invisible-tech-rgb), 1),
    0 0 60px rgba(var(--invisible-tech-rgb), 1),
    0 0 100px rgba(var(--invisible-tech-rgb), 1);

  /* Estética general */
  border-radius: 99rem;
  transform-style: preserve-3d;
  perspective: 1000px;

  /* Texto */
  padding: 12px 24px;
  color: var(--dark-purple);
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: -0.96px;
}

/* Borde animado suave (ida y vuelta) */
@keyframes borderFlow {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
.main_footer_nav_dnd-row-0-background-layers {
position: relative !important;
    z-index: 1 !important;
}
.main_footer_nav_dnd-row-2-background-layers{
position: relative !important;
    z-index: 1 !important;
}
}
.dnd-section h1 {
color: var(--dark-purple);
font-family: "Familjen Grotesk", sans-serif !important;}
h1, h2, h3, h4, h5, h6 {
line-height: 120% !important;
font-size-adjust: ex-height 0.5;
  font-family: "Familjen Grotesk", sans-serif !important;
  font-weight: 300 !important;
}
h1, h2, h3, h4, h5, h6, p {
    margin: 0 0 0em 0 !important;
}
ul, ol {
    margin: 0 0 0rem;
}
em.special-text {
  font-family: "STIX Two Text", serif;
  font-style: italic;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

  font-family: "Familjen Grotesk", sans-serif;
}

.body {
  font-family: "inter", sans-serif;
}

.special-text {

  font-family: "STIX Two Text", serif;
  font-style: italic;
}

.chip {
  display: inline-block;
  padding: 0rem 0.2rem 0rem 0rem;
  border-radius: 9999px;
  background: var(--highlight-gradient);
 
}
.highlight-frame {
  color: var(--dark-purple);

  border-radius: 20px;
  display: inline-block;
  padding: 1px 1px;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: 18px !important;
  font-style: normal;
  font-weight: 500;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  opacity: 1; /* Inicialmente invisible */
  transition: opacity 0.3s ease-in-out, transform 0.2s ease-in-out;
border: 1px solid transparent;
    background-image: linear-gradient(var(--off-white), var(--off-white)), linear-gradient(270deg, var(--invisible-tech), transparent, var(--invisible-tech));
    background-origin: border-box;
    background-clip: padding-box, border-box;
    background-size: 400% 400%;
    animation: borderFlow 6s linear infinite;
}
.chip-highlight {
  color: var(--dark-purple);

  border-radius: 60px;
  display: inline-block;
  padding: 8px 16px;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: 18px !important;
  font-style: normal;
  font-weight: 500;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  opacity: 1; /* Inicialmente invisible */
  transition: opacity 0.3s ease-in-out, transform 0.2s ease-in-out;
border: 1px solid transparent;
    background-image: linear-gradient(var(--off-white), var(--off-white)), linear-gradient(270deg, var(--invisible-tech), transparent, var(--invisible-tech));
    background-origin: border-box;
    background-clip: padding-box, border-box;
    background-size: 400% 400%;
    animation: borderFlow 6s linear infinite;
}
.chip-right {
  display: inline-block;
  padding: 0rem 0rem 0rem 0.2rem;
  border-radius: 9999px;
  background: var(--highlight-gradient-right);
 
}
.hs-form__field__input {
  border-radius: 20px !Important;

}
.hs-video-wrapper iframe {
  border-radius: 15px;
}
.hana-ai-card-title{
font-family: "Familjen Grotesk", sans-serif !important;
}
.tab-text{
    max-width: 170px;

font-family: "Familjen Grotesk", sans-serif !important;
}

.hana-ai-card-description{
font-feature-settings: "ss02" off !important;
font-family: "inter", sans-serif !important;
}
.block-benefits li{
font-family: "inter", sans-serif !important;
}
#hs_cos_wrapper_widget_1729788479911 .button{
font-family: "inter", sans-serif !important;
}
#hs_cos_wrapper_module_172978746024816 select{
font-family: "inter", sans-serif !important;
}
#hs_cos_wrapper_module_172978746024816 label:not(.hs-error-msg){
font-family: "inter", sans-serif !important;
}
#hs_cos_wrapper_module_172978746024816 input[type="submit"]{
 font-size: 18px !important;
font-family: "inter", sans-serif !important;
}
.card-title{font-family: "Familjen Grotesk", sans-serif !important;}
.card-description{
font-family: "inter", sans-serif !important;
}
}
.block-description{
font-family: "inter", sans-serif !important !important;
}
.block-title, .tag-bubble{
font-family: "Familjen Grotesk", sans-serif !important;
}
h1,
h3,
h4 {
  
  
  
}
h2 {

text-align: center !Important;


font-size: 42px !Important;
font-style: normal !Important;
font-weight: 400 !Important;
line-height: 130% !Important; /* 54px */
text-wrap: balance !Important;
}

.imageLoop__item {
  height: 80px !important;
  box-shadow: none !important;
  background-color: transparent !important;
  width: 100px !important;
}

strong {
font-weight: 600 !Important;
}

.imageLoop {
  margin-bottom: 0px !important;
}

/*****************************************/
/* INICIO - SECCIÓN SLIDER   */
/*****************************************/
.c-infoSlide__visual {
  height: clamp(15rem, 22vw, 40rem) !important;
  border-radius: 15px !important;
}
.swiper-slide {
  margin-top: 0px !important;
  margin-bottom: 5px !important;
  padding-top: 0px !important;
  padding-bottom: 5px !important;
}

/*****************************************/
/* FINAL - SECCIÓN SLIDER   */
/*****************************************/





h3 {
 font-size: 22px !important;
  
}

h4 {
  font-size: 32px !important;
  line-height: 40px !important;
}

h5 {
  font-size: 20px !important;
  line-height: 30px !important;
  font-weight: 600 !important;
}

.h43 {
  font-size: 32px !important;
  line-height: 40px !important;
  font-weight: 600 !important;
}

p {
font-family: "inter", sans-serif;
  
}

.body-3 {
  font-size: 16px;
  line-height: 24px;
}
.body-4 {
  font-size: 14px;
  line-height: 22px;
}

h6 {
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 600 !important;
font-family: "Familjen Grotesk", sans-serif !important;
}

a {
  font-family: "inter", sans-serif !important;
  
}

.label__tag {
  font-size: 14px !Important;
 font-weight: 600;
 letter-spacing: 1.5px;
  background-color: #f0f2ff;
  border-radius: 50px;
  display: inline-block;
  padding: 10px 15px;
}

/*****************************************/
/* FORM   */
/*****************************************/

form {
  padding: 0px !important;
}

.hs-input {
  width: 100% !important;
}

fieldset {
  max-width: 100% !important;
}

fieldset div {
}

label span {
  font-weight: 500 !important;
}

.hs-error-msgs {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0px !important;
  font-size: 12px;
  padding: 5px !important;
}

select {
  color: #73757a !important;
}

select option {
  color: #181b32 !important;
}

.actions input {
  display: block !Important;
  width: 100% !Important;

}
/*****************************************/
/* HEADER  */
/*****************************************/

.btn-list__item {
  padding-left: 10px !important;
}

.header__cta a {
  padding: 10px 20px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
}

.main-nav__item button { 
 font-family: "inter", sans-serif;
  font-size: 13px !important;
  padding: 10px 20px !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
color: var(--dark-purple) !important;
}

.main-nav__item  > a {
font-family: "inter", sans-serif;
  font-size: 13px !important;
  padding: 10px 20px !Important;
  margin: 0px !Important;
font-weight: 600 !important;
color: var(--dark-purple) !important;
}
.main-nav__item-label{
font-family: "inter", sans-serif;
font-weight: 600 !important;
color: var(--dark-purple) !important;
}

header .container {
  max-width: 1400px !important;
  padding: 15px !important;
}

.header__nav {
  justify-content: flex-start !Important;
}

.header__nav li{
  margin: 5px 0px;
}
/*****************************************/
/* MENU DESPLEGABLE*/
/*****************************************/

.sub-menu-drop {
  left: 0px !important;
  border-radius: 10px !important;
  top: 65px !important;
}

.main-nav__item-icon {
  color: #4b22f4 !important;
  stroke-width: 2px !important;
}



.main-nav__item button {
 padding: 10px !Important;
  
  }

.main-nav-list {
  margin-left: 15px !Important;
  
  }


/*****************************************/
/* HEADER - MEGA MENU*/
/*****************************************/

.mega-drop-wrapper {
  background-color: #ffff !important;
  box-shadow: var(--shadow) !important;
  margin-bottom: 50px !important;
}

.mega-drop {
  top: 70px !important;
}

.mega-drop__item {
  border-radius: 10px !important;
}

.mega-drop__item:hover {
  background-color: #f6f7f9 !important;
}

.mega-drop__item img {
  width: 50px !important;
}
.mega-drop__item-title {
  font-size: 16px !important;
  font-weight: 600 !important;
}

.paragraph--xs {
  font-weight: 400 !important;
  color: #181b32 !important;
}

.sub-menu__item a {
font-size: 13px !Important;  
  }
/*****************************************/
/* BUTTON   */
/*****************************************/

.button--primary {
font-family: "inter", sans-serif;
font-weight: 600 !important;
    border: 2px solid var(--btn-color);
margin-bottom: 0.5 rem !important;
    margin-top: 0.5 rem !important;

}

.button--primary:hover {
  border: 2px solid #9c86f9 !important; 
}

.button--secondary {
font-family: "inter", sans-serif;
font-weight: 600 !important;
  color: #4b22f4 !important;
  background-color: transparent !important;
  border: 2px solid !important;
  border-color: #4b22f4 !important;
  padding-left: 1.8rem !important;
  padding-right: 1.8rem !important;
margin-bottom: 0.5 rem !important;
    margin-top: 0.5 rem !important;
}

.button--black {
    border-radius: 300px !important;
    background-color: transparent !important;
    border: 1px solid #25D366 !important;
    height: auto;
    display: block;
    padding: 1.8rem 16px !important;
    font-size: 14px;
    font-weight: 500;
}


.button--simple{
font-family: "inter", sans-serif;
font-weight: 600 !important;
    color: var(--dark-purple) !important;
    background-color: transparent !important;
    border: 2px solid !important;
    border-color: #25D366 !important;
    padding-left: 1.8rem !important;
    padding-right: 3rem !important;
    margin-right: 1.4rem !important;
    margin-bottom: 0.5rem !important;
    margin-top: 0.5rem !important;
    
  
}
.button--simple:hover{
    color: #25D366 !important;
    border-color: #25D366!important;
    background-color: #25D366; /* Slightly darker color on hover */
    box-shadow: none; /* Ensure no shadow effect */
    
}


.button--secondary-white {
font-family: "inter", sans-serif;
font-weight: 600 !important;
  color: #fff !important;
  background-color: transparent !important;
  border: 2px solid #fff !important;
  border-radius: 12px;
  padding-left: 1.8rem !important;
  padding-right: 1.8rem !important;
margin-bottom: 0.5rem !important;
    margin-top: 0.5rem !important;
}

.button--secondary:hover {
  color: #9c86f9 !important;
  border-color: #9c86f9 !important;
}

.button--primary:hover {
  background-color: #9c86f9 !important;
}

.button--primary {
  padding-left: 1.8rem !important;
  padding-right: 1.8rem !important;
margin-bottom: 0.5rem !important;
    margin-top: 0.5rem !important;
}

.button--inverted {
  border: 2px solid #fff!important;
  padding-left: 1.8rem !important;
  padding-right: 1.8rem !important;
margin-bottom: 0.5rem !important;
    margin-top: 0.5rem !important;
}

.button--inverted:hover {
  background-color: #9c86f9 !important;
  border: 2px solid #9c86f9!important;
}

.button--inverted:focus {
  outline: none;
  border: 2px solid #fff!important;
}

.tabs__tab[aria-selected='false']:focus, .tabs__tab[aria-selected='true']:focus {
    outline: none !important;
}

button:focus, .button:focus, .hs-button:focus, button:focus, input[type=submit]:focus {
  outline: none !important;
}

/*****************************************/
/* VIDEO   */
/*****************************************/

.vjs-poster {
  border-radius: 15px !important;
}

/*****************************************/
/* Testimonial   */
/*****************************************/

.testimonial-h4 {
  font-size: 32px !important;
  line-height: 40px !important;
  font-weight: 400 !important;
}

/*****************************************/
/* THUMBAIL LINK  */
/*****************************************/

.dnd-column {
  border-radius: 15px !important;
}

/*****************************************/
/* THUMBAIL LINK  */
/*****************************************/

h1 a {
  
  font-size: 46px !important;
  line-height: 3rem !important;
  color: #181b32 !important;
  font-weight: 400 !important;
}

h2 a {
  font-size: 52px !important;
  line-height: 65px !important;
  color: #181b32 !important;
  font-weight: 400 !important;
}

h3 a {
  font-size: 40px !important;
  line-height: 50px !important;
  color: #181b32 !important;
  font-weight: 400 !important;
}

h4 a {
  font-size: 32px !important;
  line-height: 40px !important;
  color: #181b32 !important;
  font-weight: 400 !important;
}

h5 a {
  font-size: 20px !important;
  line-height: 30px !important;
  font-weight: 500 !important;
  color: #181b32 !important;
}

/*****************************************/
/* FOOTER  */
/*****************************************/

footer a {
  opacity: 100 !important;
  font-weight: 400 !important;
   
}

footer a:hover {
  opacity: 0.7 !important;
}

.accordion__content p  {
color: #181b32 !Important;
}


/*****************************************/
/* INICIO RESPONSIVE MOBILE   */
/*****************************************/

@media (max-width: 765px) {
  h1 {
    font-size: 28px !important;
    line-height: 125% !important;
    font-weight: 600 !important;
  }

  h2 {
    font-size: 28px !important;
    line-height: 120% !important;
  }

  h3 {
    font-size: 24px !important;
    line-height: 24px !important;
  }

  h4 {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  h5 {
    font-size: 18px !important;
    line-height: 24px !important;
  }

  h6 {
    font-size: 14px !important;
    line-height: 18px !important;
  }

  .h43 {
    font-size: 24px !important;
    line-height: 30px !important;
  }
  p {
  
    line-height: 120% !important;
    letter-spacing: 0.1px !important;
  }

  a {
    font-size: 16px !important;
    font-weight: 600 !important;
  }

  .testimonial-h4 {
    font-size: 24px !important;
    line-height: 30px !important;
    font-weight: 400 !important;
  }

  .imageLoop__item {
    width: 80px !important;
  }

  .thumbnail__description {
    display: none !important;
  }

  .label__section {
    font-size: 14px !important;
    line-height: 18px !important;
  }

  .b-footer {
    text-align: center !important;
    margin: auto !Important;
  }

  .content-ul {
    display: block !important;
  }

  .dnd-column {
    border-radius: 15px !important;
  }

  fieldset div {
    width: 100% !important;
  }



  .mega-drop-wrapper {
    margin-bottom: 0px !important;
    box-shadow: none !important;
    background-color: #f6f7f9 !important;
  }
  .menu-drop-panel {
    background-color: #f6f7f9 !important;
  }

  .mega-drop__item {
    white-space: normal !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    align-items: center !important;
  }
.button--simple{
  
    padding-left: 1.8rem !important;
    padding-right: 1.8rem !important;
    margin-right: 1rem !important;
    margin-bottom: 0.5rem !important;
    margin-top: 0.5rem !important;
    
  
}
  .mega-drop__item img {
    display: block !important;
    width: 32px !important;
    height: 32px !important;
    margin-right: 8px !important;
    margin-bottom: 0px !important;
  }

  .mega-drop__item p {
    /* display: block !Important;  */ /* OCULTAR */
    font-size: 13px !important;
    line-height: 20px !important;
    padding-top: 10px !important;
  }

  .mega-drop__item-title {
    font-size: 13px !important;
  }
  .main-nav__item-label {
    font-size: 15px !important;
  }

  .main-nav__item {
    padding: 0 !important;
  }
  
  .main-nav__item a {
    margin: 0px 10px !Important;
  }

  .main-nav__item > a {
    font-size: 15px !important;
    display: block;
    padding: 10px !important;
  }

  .main-nav__item > a span {
    display: flex;
    height: 25px;
    align-items: center;
  }
  .sub-menu__item {
    padding: 20px 50px !important;
  }
 
  .sub-menu__item a {
    font-size: 13px !important;
  }
  .drop-trigger {
    width: 100%;
    justify-content: space-between;
  }
  .main-nav__item-icon {
    order: 2 !important;
    width: 25px !important;
  }

  .main-nav__item::after {
    content: "";
    display: block;
    height: 1px;
    background-color: #f2f3f5;
   margin-top: 5px;
  }
 
  .tabs__tab, .tabs__tab:focus, .tabs__tab:active {
    justify-content: center;
    padding: 8px 20px !Important;
    text-align: center;
   font-size: 14px !Important;
}
  
  .btn-list__item {
  padding-right: 10px !important;
  padding-left: 0px !important;

}
  
  .sub-menu-drop {
  border-top-left-radius: 0px !Important;
  border-top-right-radius: 0px !Important;
  }
  .mega-drop__item-text div {
    display: none;
    }
  
  .main-nav-list {
    margin: 0px !Important;
    }

  
  .main-nav__item button {
    padding: 10px 20px !important;
    }
  
  
}

/*****************************************/
/* FIN RESPONSIVE MOBILE   */
/*****************************************/

/*****************************************/
/* MODULO SWIPER   */
/*****************************************/

.swiper-container {
  margin: 0px !important;
  padding: 0px !important;
}

/*****************************************/
/* MODULO THUMBAIL   */
/*****************************************/

.label__simple {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 1.5px;
  margin-bottom: 1em;
  text-transform: uppercase;
  color: #4b22f4;
  transition: 0.5s;
}

.label__simple:hover{
  opacity: 0.5;
  transition: 0.5s;
}

.label__section {
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
}

.thumbnail__label {
  background-color: #f0f2ff !important;
  border-radius: 50px !important;
  display: inline-block !important;
  padding: 5px 10px !important;
}

.thumbnail__title:hover {
  color: #181b32 !important;
}

.thumbnail__description {
  font-size: 14px !important;
  line-height: 22px !important;
}

.button--simple:before {
  content: none !important;
}

footer button--primary {
  text-align: center;
  background-color: ;
}

.keypoint__icon {
  border-radius: 12px !important;
}



/*****************************************/
/* Landings Productos */
/*****************************************/
.main_content-row-0-force-full-width-section > .row-fluid {
   
padding: 0px !important;}
body {
  background: linear-gradient(
    90deg,
    rgba(225, 222, 255, 0.1),
    rgba(225, 222, 255, 0.04)
  );
}
.beneficios-text{
font-size: 26px;
}
/* Hero Section */
.image-module{
  
width: 100%;
}
.hero-section {
 
  padding-top: 6rem;
    padding-right: 5rem;
    padding-bottom: 3rem;
    padding-left: 5rem;
  display: flex;
  justify-content: center;

}

.hero-container {
  max-width: 1600;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 4rem;
  width: 100%;
}

.hero-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.hero-title {
  font-size: 2.75rem !important;
  line-height: 1.2;
  color: var(--core-black);
}
.hero-title.headline {
color: var(--dark-purple) !important;
font-weight: 400 !important;
}
.hero-paragraph {
  font-size: 1.1rem;
  color: var(--core-black);
  line-height: 1.6;
}

.hero-ctas {
  justify-content: left;
  display: flex;
  gap: 0.5rem;  
}

.btn-primary {
  padding: 0.6rem 1.75rem;
  border-radius: 8px;
  background-color: var(--mora-blue);
  color: white;
  font-family: "inter", sans-serif;
font-weight: 550;
  font-size: 0.9rem;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.btn-primary:hover {
  background-color: var(--dark-purple);
}

.btn-secondary {
font-weight: 550;
  padding: 0.6rem 1.75rem;
  border-radius: 8px;
  border: 2px solid var(--mora-blue);
  color: var(--mora-blue);
  font-family: "inter", sans-serif;
  font-size: 0.9rem;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.btn-secondary:hover {
  background-color: var(--mora-blue);
  color: white;
}

/* Image Placeholder */
.hero-image {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_module{
display: grid;
}
.image-placeholder {
  width: 100%;
  max-width: 500px;
  height: 400px;
  background-color: var(--off-white);
  border-radius: 1rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--light-grey);
  font-family: "Helvetica Now Display", sans-serif;
}
.mora-blue {
  color: var(--mora-blue);
}
.hero-list {

  list-style-type: disc;
  padding-left: 1.5rem;
  font-family: "inter", sans-serif;
  color: var(--core-black);
}

.hero-list li {
font-size: 1rem;

}
.hero-description {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Responsive */
@media (max-width: 1024px) {
.main_content-row-0-force-full-width-section > .row-fluid {padding: 16px !important;}
.hero-content {
      align-items: center;

}
.hero-image {
  flex: 1;
  display: none;
  justify-content: center;
  align-items: center;
}
  .hero-section{padding-top: 2rem;
    padding-right: 16px;
    padding-bottom: 3rem;
    padding-left: 16px;}

  .hero-container {

    flex-direction: column;
    text-align: center;
  }

  .hero-image {
    margin-top: 2rem;
  }

  .hero-title {
    text-wrap: balance;
    font-size: 2em !important;
  }

  .hero-paragraph {
    font-size: 18px;
  }

  .hero-ctas {
    justify-content: center;
    flex-wrap: wrap;
  }
}


/* Client Logo Section */
@keyframes borderFlow {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
.client-logo-section {

  
  display: flex;
  justify-content: center;
}

.client-logo-card {

  border-radius: 0rem 0rem 1rem 1rem;
  padding: 1.5rem 2rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;

  

  /
}

.client-logo-title {
  font-size: 1rem;
  opacity: 0.5;
  font-weight: 600;
  text-align: center;
  color: var(--core-black);
  font-family: "Inter", sans-serif;
}

/* Grid: 6 columns on desktop */
.logo-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 2rem;
  align-items: center;
  justify-items: center;
  width: 100%;
}

.logo-item img {
  max-height: 60px;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.9;
  transition: opacity 0.2s ease;
}

.logo-item img:hover {
  opacity: 1;
  filter: none;
}

/* Carrusel para mobile */
.logo-carousel {
  display: none;
  overflow: hidden;
  width: 100%;
  padding: 0rem 0;
}

.logo-carousel-track {
  display: inline-flex;
  animation: scrollLogos 25s linear infinite;
  gap: 2rem;
}

.logo-carousel-track img {
  max-height: 48px;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.5;
  transition: opacity 0.2s ease;
}

.logo-carousel-track img:hover {
  opacity: 1;
  filter: none;
}

/* Animaciones */
@keyframes borderFlow {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

@keyframes scrollLogos {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* Tablets: 4 columnas */
@media (max-width: 1024px) {
  .logo-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }
}

/* Mobile: carrusel y ajustes */
@media (max-width: 600px) {
.btn-primary {
 margin-top: 2rem;
}
.seccionCrehana {

margin-left:16px;
margin-right:16px;

}
  .client-logo-section {

    padding: 0rem;
  }

  .logo-grid-section {
    display: none;
  }

  .logo-carousel {
    display: block;
  }

  .logo-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }

  .logo-item img {
    max-height: 48px;
  }

  .client-logo-card {
    padding: 1rem 1.25rem;
  }

  .client-logo-title {
    font-size: 0.875rem;
  }
}

/*------------------------------------*/

/* TABS */
.tituloSeccion{
color: var(--dark-purple) !important;
margin-bottom: 3rem !important;
}
.hero-ctas{
margin-top: 0rem;
margin-bottom: 0rem;
justify-self: center;
}
.seccionCrehana {
 

    display: grid;

margin-top: 6rem;
margin-bottom: 6rem;
align-items: anchor-center;
max-width: 1200px;
justify-self: center;
}


/* Establecer el color de fondo para los tabs activos y los contenedores de contenido */
.tab-box img {
    margin-bottom: 10px; /* Espacio entre la imagen y el texto */
    max-width: 40px; /* Ajuste del tamaño de la imagen */
}

.tab-box.active img {
    filter: brightness(1.2); /* Efecto para el ícono cuando el tab está activo */
}
.tab-box[data-tab="company"].active,
#company.tab-content-item.active,
.tab-content-container.active[data-tab="company"],
.tab-content-wrapper.active[data-tab="company"] {
    background-color: #fff;
}

.tab-box[data-tab="documents"].active,
#documents.tab-content-item.active,
.tab-content-container.active[data-tab="documents"],
.tab-content-wrapper.active[data-tab="documents"] {
    background-color: #fff;
}

.tab-box[data-tab="time-off"].active,
#time-off.tab-content-item.active,
.tab-content-container.active[data-tab="time-off"],
.tab-content-wrapper.active[data-tab="time-off"] {
    background-color: #fff;
}

.tab-box[data-tab="workflows"].active,
#workflows.tab-content-item.active,
.tab-content-container.active[data-tab="workflows"],
.tab-content-wrapper.active[data-tab="workflows"] {
    background-color: #fff;
}
.tab-box[data-tab="comunidad"].active,
#workflows.tab-content-item.active,
.tab-content-container.active[data-tab="comunidad"],
.tab-content-wrapper.active[data-tab="comunidad"] {
    background-color: #fff;
}

/* Transiciones suaves para cambios de fondo */
/* Estilo general para los botones de los tabs */
.tab-box {
    background-color: #ffffff;
    border: none;
    border-radius: 10px 10px 0 0;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: left;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
    text-align: left;
    position: relative;
    font-size: 16px; /* Tamaño de fuente */
    font-weight: 500; /* Fuente normal para todos */
    color: #303030; /* Color de texto normal */
}

/* El tab seleccionado debe estar en negrita */
.tab-box.active {
    font-weight: 600; /* Negrita para el tab activo */
    background-color: #f8fafc;
    z-index: 2;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    border-bottom: none;
    transition: background-color 0.3s ease;
}

.tab-content-item {
    transition: background-color 0.3s ease, opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

/* Ajustes generales para los tabs */
.tab-box {
   background-color: #Fafafa;
    border: none;
    border-radius: 10px 10px 0 0;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    padding: 20px;
    width: inherit;
    text-align: left;
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease;
}

.tab-box.active {
    background-color: inherit; /* Heredar el color del tab activo */
    z-index: 2;
    box-shadow: none;
    border-bottom: none;
}

.tabs-container {
    display: flex;
    justify-content: space-around;
    gap: 5px;
    width: 100%;
    margin-bottom: 0px;
}

.tab-content-container {
  width: 100%;
    padding: 40px;
    border-radius: 0 0 8px 8px;
    position: relative;
    top: -5px;
    z-index: 1;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    margin-top: 0;
    margin-bottom: 3rem;

    transition: background-color 0.3s ease;
}

.tab-content-item {
     opacity: 0;
    display: none;
    transform: translateY(20px);
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.tab-content-item.active {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* Contenido del tab */
.tab-content-wrapper {
align-items: center;
    display: flex;
    justify-content: space-between;
   
    background-color: inherit; /* Heredar el color del tab activo */
}

.tab-content-text {
    flex: 1;
    text-align: left;
}

.tab-content-title {
    font-family: 'familjen grotesk', sans-serif;
    font-size: 34px;
    font-weight: 400;
    color: var(--dark-purple);
    margin-bottom: 15px;
}

.tab-content-description {
    font-family: 'inter', sans-serif;
    font-size: 16px;
    color: #1a1a1a;
    line-height: 1.8;
    margin-bottom: 15px;
}

.tab-content-list {
    list-style-type: disc;
    margin-left: 20px;
}

.tab-content-list li {
    font-family: 'inter', sans-serif;
    font-size: 16px;
    color: #1a1a1a;
    margin-bottom: 10px;
}

.tab-content-image {
flex: 1;
    width: 50%; /* La imagen ahora ocupará el 50% del contenedor */
    margin-left: 30px;
}

.tab-image-content {
    width: 100%;
    height: auto;
}

/* Estilos para mobile */
@media (max-width: 768px) {
    .tabs-container {
        flex-direction: column;
        gap: 10px;
    }

    .tab-box {
        width: 100%;
    }

    .tab-content-wrapper {
        padding: 0px;
        flex-direction: column;
    }

    .tab-content-image {
display: none;
        margin-left: 0;
        margin-top: 20px;
        max-width: 100%;
    }

    .tab-content-container {
        display: none;
        padding: 0;
        margin: 0;
    }

    .tab-content-container.active {
        display: block;
        padding: 16px;
        margin: 0;
    }

    .tab-box {
               column-gap: 16px;
        align-items: center;
        background-color: #fff;
        border: none;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
        cursor: pointer;
        display: flex;
        font-size: 16px;
        font-weight: 600;
        justify-content: flex-start;
        margin-bottom: 10px;
        padding: 16px;
        position: relative;
        text-align: left;
        transition: background-color .3s ease;
        width: 100%;
        flex-direction: row;
    }

    .tab-box::after {
        content: '+';
        font-size: 20px;
        color: #303030;
        position: absolute;
        right: 20px;
    }

    .tab-box.active::after {
        content: '-';
    }

    .tab-box.active {
        background-color: #ffffff;
    }

    .tab-content-item {
        padding: 16px;
        background-color: inherit;
        border-radius: 8px;
        box-shadow: none;
        margin-top: 0;
        margin-bottom: 10px;
        opacity: 1;
    }

    .tab-content-item.active {
        display: block;
    }
}



/* Contenedor principal */
.hr-module {
overflow: visible !important;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 0px;
    height: auto; /* Permite que el contenido crezca según sea necesario */
    overflow: hidden;
    position: relative;
}

.hr-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0px;
    height: auto; /* Permite que el contenido crezca según sea necesario */
}

/* Bloques ajustables sin scroll */
.hr-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 80px;
    padding: 1rem;
}

.block-1{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 80px;
  padding: 32px 32px;
  background-color: #fff;

  /* Borde con gradiente blanco → mora-blue */
  border: 2px solid transparent;
  border-radius: 24px;
  background-image: 
    linear-gradient(white, white), /* fondo interno */
    linear-gradient(to right, white, var(--mora-blue));
  background-origin: border-box;
  background-clip: padding-box, border-box;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  position: relative;
}
.block-2{
display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 80px;
  padding: 20px 20px;
  background-color: #fff;
/* Borde con gradiente */
  border: 2px solid transparent;
  border-radius: 24px;
  background-image: 
    linear-gradient(white, white), /* fondo blanco interno */
    linear-gradient(to right, var(--mora-blue), transparent);
  background-origin: border-box;
  background-clip: padding-box, border-box;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  position: relative;
}
.block-3{
 display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 80px;
  padding: 20px 20px;
  background-color: #fff;

  /* Borde con gradiente */
  border: 1px solid transparent;
  border-radius: 24px;
  background-image: 
    linear-gradient(white, white), /* fondo blanco interno */
    linear-gradient(to left, var(--mora-blue), transparent);
  background-origin: border-box;
  background-clip: padding-box, border-box;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  position: relative;
}

/* Ajustes para las columnas */
.hr-block-left, .hr-block-right {
    gap: 16px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Ajustes para el bloque 2: imagen a la izquierda */
.block-2 .hr-block-left {
    order: 0;
}

.block-2 .hr-block-right {
    order: 1;
}

/* Burbujas (tags) */
.tag-bubble {
    width: fit-content;
    background-color: #ffb200;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 20px;
    display: inline-block;
}

/* Títulos */
.block-title {
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 500;
    color: #050823;
    margin-bottom: 0;
}

/* Descripción */
.block-description {
    
    font-size: 16px;
    color: var(--dark-grey);
    line-height: 1.5 !important;
}

/* Diseño responsive */
@media screen and (max-width: 768px) {
    .hr-module {
        display: block;
        padding: 0px;
        height: auto;
    }

    .hr-content {
        flex-direction: column;
        gap: 0px;
    }

    .hr-block {
        gap: 16px;
        display: flex;
        flex-direction: column;
        padding: 1.5rem;
    }

    .hr-block-left, .hr-block-right {
        gap: 16px;
        flex: none;
        display: flex;
        width: 100%;
        text-align: left;
    }

    /* Botones de acordeón */
    .accordion-button {
        display: flex;
        justify-content: space-between;
        width: 100%;
        background-color: #E5F9F1;
        border: none;
        padding: 10px 15px;
        cursor: pointer;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 600;
    }

    .accordion-button::after {
        content: "+";
        font-size: 16px;
        color: #303030;
    }

    .accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-out;
        padding-left: 15px;
    }

    .accordion-content.open {
        max-height: 500px;
        transition: max-height 0.3s ease-in;
    }

    /* Ocultar imágenes en mobile */
    .hr-image {
        display: none;
    }
}




.hr-image img{
border-radius: 1rem !important;
}

.responsive-columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Tres tarjetas por fila */
    gap: 20px;
    max-width: 1200px;
    margin: auto;
}
.dark-purple{
color: var(--dark-purple) !important;
}
.column {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid var(--dark-purple); /* Borde en azul corporativo */
    padding: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hana-ai-card-image {
    width: 100%;
    height: auto;
    border-radius: 8px;
    object-fit: cover;
  margin-top: 1rem;
max-width: 900px;}

.hana-ai-card-content{
text-align: center;
}
.hana-ai-card-title{

}
.hana-ai-card {

padding: 2rem;
width: fit-content;
    justify-self: center;
margin-top: 1rem;
margin-bottom: 3rem;
border: 1px solid transparent;
  background-image:
    linear-gradient(#ffffff, #ffffff),
    linear-gradient(270deg, var(--invisible-tech), transparent, var(--mora-blue));
  background-origin: border-box;
  background-clip: padding-box, border-box;
  background-size: 200% 200%;
  animation: borderFlow 3s linear infinite alternate;
}

@keyframes borderFlow {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
.column:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.icon {
    width: 60px;
    height: auto;
    margin-right: 20px;
}

.content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.title-cards-caracteristicas {
    font-size: 20px;
    font-weight: 600;
color: var(--mora-blue) !important;
    margin-bottom: 12px !important;
}

.description {
    font-size: 16px;
    color: var(--dark-grey);
    line-height: 1.5 !important;
    margin: 0;
}

/* Responsividad */
@media (max-width: 768px) {
    .responsive-columns {
        grid-template-columns: repeat(2, 1fr); /* Dos tarjetas por fila */
    }
}

@media (max-width: 480px) {
    .responsive-columns {
        grid-template-columns: 1fr; /* Una tarjeta por fila */
    }

    .column {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .icon {
        margin-bottom: 15px;
        margin-right: 0;
    }
}




/* Estilos generales para el contenedor */
  .container-cierre {

        padding: 40px;
  
    border-radius: 15px;
    
    max-width: 1200px;
margin: 1.5rem auto;
   
  }

  .content-wrapper {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem; /* Espaciado de 10px entre los elementos */
  }

  /* Estilos para el título principal */
.subtitle{ 
font-family: 'Inter', sans-serif;
font-size: 18px;
text-wrap: balance;}
.main-title {
  position: relative;
  z-index: 0;
  overflow: hidden;

  /* Fondo translúcido */
  background-color: rgba(214, 253, 106, 0.08);

  /* Borde animado tipo glassmorphism */
  border: 2px solid transparent;
  background-image:
    linear-gradient(135deg, rgba(214, 253, 106, 0.6), transparent, var(--off-white)),
    linear-gradient(135deg, var(--invisible-tech), var(--off-white), var(--invisible-tech));
  background-origin: border-box;
  background-clip: padding-box, border-box;
  background-size: 300% 300%;
  background-position: 0% 50%;

  /* Animaciones suaves */
  animation: 
    borderFlow 3s ease-in-out infinite alternate;
   

  /* Glow fuerte */
  box-shadow:
    0 0 20px rgba(var(--invisible-tech-rgb), 1),
    0 0 60px rgba(var(--invisible-tech-rgb), 1),
    0 0 100px rgba(var(--invisible-tech-rgb), 1);

  /* Estética general */
  border-radius: 99rem;
  transform-style: preserve-3d;
  perspective: 1000px;

  /* Texto */
  padding: 12px 42px;
  color: var(--dark-purple);
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 32px;
  font-weight: 300;
  line-height: 120%;
  letter-spacing: -0.96px;
}

/* Borde animado suave (ida y vuelta) */
@keyframes borderFlow {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

/* Zoom tipo latido (suave) */
@keyframes  {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.01);
  }
}

  /* Estilos para el botón CTA */
  .cta-button {
background-color: #4B22F4;
  color: #ffffff;
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  cursor: pointer;
font-family: "inter", sans-serif;
  font-size: 16px; /* Tamaño de fuente actualizado */
  font-weight: 600; /* Peso de fuente actualizado */
  padding: 1em 2.5em; /* Aumentamos el padding */
  text-decoration: none;
  transition: background-color 0.3s ease, transform 0.2s ease;
  flex-shrink: 0; /* Hacer que abrace el texto */
}
.cta-button:hover {
background-color: #3a1bca;
  transform: scale(1.02);
}

  /* Estilos para la calificación de Capterra */
  .rating {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .rating img {
    width:100px;
    margin-right: 8px;
  }

  /* Responsiveness */
  @media (max-width: 768px) {
.content-wrapper {
    padding: 0px;
  }
/* Estilos generales para el contenedor */
  .container-cierre {
padding: 0px; 
       
  }

    .main-title {
padding: 32px; 
      font-size: 32px;
font-weight: 500;
    }
.rating img {
    width:100px;
    margin-right: 8px;
  }
  }




/* PAID MEDIA LANDINGS */


.body{

}
.hero-landing-crehana {
  padding: 6rem 0rem 2rem 0rem;
}
/* Estilo para el mensaje */
.form-message {
    width: fit-content;

  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(72, 34, 244, 0.08); /* mora-blue claro */
  border: 1px solid rgba(72, 34, 244, 0.2);
  padding: 0.75rem 1rem;
  border-radius: 8px;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  color: #050823;
  opacity: 0;
  transform: translateY(5px);
  animation: fadeInUp 0.4s ease forwards;
}

/* Animación fade-in */
@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Flecha animada hacia la derecha */
.arrow-right {
  display: inline-block;
  font-size: 1.2rem;
  color: #4822F4; /* mora-blue */
  animation: arrowBounce 1s infinite;
}

@keyframes arrowBounce {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(5px); }
}
.hero-container {
 padding: 0rem 4rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  align-items: center;
  max-width: 1350px;
  margin: 0 auto;
}
.highlight-mora {
  color: var(--mora-blue);
}
.hero-left {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.hero-title {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 2.5rem;
  color: var(--core-black);
  line-height: 1.2;
}

.hero-subtitle {
  font-family: "Inter", sans-serif;
  font-size: 1.125rem;
  color: var(--core-black);
  max-width: 90%;
}
/* Contenedor CTA */
.hero-cta-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* Alineado a la izquierda */
  gap: 0.5rem;
}

/* Botón Secundario */
/* Wrapper del botón + hint */
.hero-cta-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem; /* menos espacio entre botón y hint */
}

/* Botón Secundario */
.hero-cta-button.secondary {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  color: var(--mora-blue);
  background-color: transparent;
  border: 2px solid var(--mora-blue);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  width: fit-content;
}

.hero-cta-button.secondary:hover {
  background-color: var(--mora-blue);
  color: #fff;
}

/* Hint debajo */
.form-hint {
  font-family: "Inter", sans-serif;
  font-size: 0.8rem; /* más pequeño */
  color: var(--mora-blue);
}



.logo-cartera-placeholder img {
  margin-top: 1.5rem;
  height: 40px;
  opacity: 0.8;
}

.hero-right {
  background: var(--off-white);
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
}

/* Responsive */
@media (max-width: 960px) {
.hero-landing-crehana {
  padding: 2rem 0rem ;
}
.hero-left {
align-items: center;
}
.hero-container {

 padding: 0rem 0rem;

}
  .hero-container {
    grid-template-columns: 1fr;
    gap: 3rem;
align-items: center;
  }

  .hero-title {
    font-size: 2rem;
  }

  .hero-subtitle {
    font-size: 1rem;
  }
}


/* CLIENT LOGOS SECTION */
/* MÓDULO: LOGOS FULL-WIDTH */
.trust-logos-section {
  width: 100%;
  padding: 0 0 0rem 0;
  display: flex;
  justify-content: center;
  background-color: #FAFAFA; /* fondo limpio */
}

.trust-container {
  width: 100%;
  /* contenedor más grande */
  padding: 2rem 5rem;
  border-radius: 0 0 3rem 2rem; /* solo esquinas inferiores */
background: #fafafa; /* invisible-tech tint */
  box-shadow: 0px 15px 25px rgba(0, 0, 0, 0.05);
  overflow: hidden;

  display: flex;
  flex-direction: column;
  align-items: center;
}

.trust-title {
  text-align: center;
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.6em !important;
  font-weight: 600 !important;
  margin-bottom: 1.5rem !important;
  color: var(--core-black);
}

.trust-title .mora-blue {
  color: var(--mora-blue);
}

/* Slider */
.logos-slider-wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.logos-slider-track {
  display: flex;
  justify-content: center;
  width: fit-content;
  animation: scroll-logos 30s linear infinite;
  gap: 3rem;
  align-items: center;
  margin: 0 auto;
}

.logos-slider-track img {
  height: 100px;
  width: auto;
  object-fit: contain;
  opacity: 0.8;
  filter: grayscale(100%); /* logos en grises */
  transition: all 0.3s ease;
}

.logos-slider-track img:hover {
  transform: scale(1.05);
  opacity: 1;
  filter: grayscale(0%); /* al hover vuelven a color */
}

@keyframes scroll-logos {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* Responsive */
@media (max-width: 768px) {
.trust-container {

  padding: 1rem 1rem;
  
}

  .trust-logos-section {
    padding: 1rem 0;
  }

  .trust-title {
    font-size: 1.4rem;
    margin-bottom: 1.5rem;
  }

  .logos-slider-track {
    gap: 2rem;
  }

  .logos-slider-track img {
    height: 70px;
  }
}




/* ============================= */
/* MÓDULO: EXPERIENCIA DE APRENDIZAJE */
/* ============================= */

/* SECCIÓN PRINCIPAL (manteniendo tu base) */
.scroll-step-section {
  border-radius: 1rem;
  background-color: var(--mora-blue) !important; /* Fondo mora-blue */
  padding: 6rem 2rem 6rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* HEADER */
.learning-header {
  max-width: 800px;
  text-align: center;
  margin-bottom: 4rem;
}

/* Titular principal */
.learning-header .headline {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 3rem !important;
  color: #fff !important;
  margin-bottom: 1rem !important;
  line-height: 1.2;
}

/* Resaltado italic */
.learning-header .headline .special-text {
  font-family: "STIX Two Text", serif;
  font-style: italic;
  color: var(--invisible-tech);
}

/* Texto de apoyo */
.learning-header .subtitle {
  font-family: "Inter", sans-serif !important;
  font-size: 1.25rem;
  color: var(--off-white);
  font-weight: 400;
  margin-top: 0.5rem;
}

/* HEADER */
.learning-header-black {
justify-self: center;
  max-width: 800px;
  text-align: center;
  margin-bottom: 4rem;
}

/* Titular principal */
.learning-header-black .headline-black {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 3rem !important;
  color: var(--dark-purple) !important;
  margin-bottom: 1rem !important;
  line-height: 1.2;
}

/* Resaltado italic */
.learning-header-black .headline-black .special-text-black {
  font-family: "STIX Two Text", serif;
  font-style: italic;
  color: var(--mora-blue);
}

/* Texto de apoyo */
.learning-header-black .subtitle-black {
  font-family: "Inter", sans-serif !important;
  font-size: 1.25rem;
  color: var(--dark-purple);
  font-weight: 400;
  margin-top: 0.5rem;
}

/* =============== */
/* TARJETAS BASE   */
/* =============== */
.scroll-step-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem; /* espacio entre tarjetas */
  max-width: 900px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.scroll-step-card {
  max-width: 800px;
  margin: 0 auto;
  padding: 1.5rem 0.5rem; /* aire lateral y vertical */
  border-radius: 1.5rem;
  background: var(--off-white);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  transition: all 0.4s ease;
  opacity: 0;
  transform: scale(0.98);
  pointer-events: none;
}

/* TARJETA ACTIVA */
.scroll-step-card.active {
  opacity: 1;
  transform: scale(1.02);
  pointer-events: auto;
  z-index: 100;
}

/* STACKING: tarjetas nuevas encima */
.scroll-step-card:nth-child(1) { z-index: 1; }
.scroll-step-card:nth-child(2) { z-index: 2; }
.scroll-step-card:nth-child(3) { z-index: 3; }
.scroll-step-card:nth-child(4) { z-index: 4; }
.scroll-step-card:nth-child(5) { z-index: 5; }

/* =============== */
/* TIPOGRAFÍA      */
/* =============== */
.card-title {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.75rem !important;
  line-height: 1.3;
  margin-bottom: 1.5rem !important;
  color: var(--mora-blue) !important;
}

.card-body {
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  color: var(--light-grey) !important;
  margin-bottom: 1rem;
}

/* Texto destacado (preguntas o frases clave) */
.card-body.highlight {
  font-weight: 600;
  color: var(--light-grey) !important;
  margin-top: 1rem !important;
}

/* =============== */
/* IMÁGENES        */
/* =============== */
.card-media {

}

.card-image {
  display: block;
  width: 100%;
  max-width: 100%;
  border-radius: 1rem;
  object-fit: cover;
}

/* =============== */
/* RESPONSIVE      */
/* =============== */
@media (max-width: 768px) {
  .scroll-step-wrapper {
    padding: 1rem 0; /* sin padding lateral en mobile */
    gap: 2rem;
  }

  .scroll-step-card {
    padding: 2rem 1.25rem; /* más compacto en mobile */
  }

  .card-title {
    font-size: 1.5rem !important;
  }
}


/* ============================= */
/* NUEVO: LAYOUT DE IMAGEN A LA IZQUIERDA */
/* ============================= */

/* Convertimos cada tarjeta en grid de 2 columnas:
   - Columna izquierda: imagen
   - Columna derecha: texto */
.scroll-step-card {
  display: grid;
  grid-template-columns: minmax(260px, 340px) 1fr;
  align-items: center;
  gap: 1.5rem;
}

/* Contenedor de imagen */
.card-media {
    justify-items: anchor-center;
  width: 100%;
}

/* Imagen en desktop */
.card-image {

  display: block;
  width: 100%;
  max-width: 90%;
  border-radius: 1rem;
object-fit: contain;     /* Se asegura que no se corte nada */
 aspect-ratio: auto;      /* Se desactiva el recorte */
}

/* Imagen en mobile */
@media (max-width: 768px) {
  .card-image {
    aspect-ratio: auto;      /* Se desactiva el recorte */
    width: 100%;
    height: auto;            /* Deja que fluya el alto natural */
    object-fit: contain;     /* Se asegura que no se corte nada */
  }
}

/* Ajustes de legibilidad en tarjetas azules */
.scroll-step-card.blue-card .card-image {
  border-color: rgba(255,255,255,0.45);
}

/* ============================= */
/* RESPONSIVE */
/* ============================= */
@media (max-width: 1024px) {
  .scroll-step-card {
    grid-template-columns: minmax(220px, 300px) 1fr;
  }
}

@media (max-width: 768px) {
  .scroll-step-section {
    padding: 6rem 01em;
  }

  .learning-header .headline {
    font-size: 2rem !important;
  }

  .scroll-step-card {
    padding: 1.5rem;
    margin: 0rem 1rem;
    grid-template-columns: 1fr;           /* Imagen arriba, texto abajo */
    transform: scale(1);                   /* Evita zoom excesivo en móviles */
  }

  .scroll-step-card.active {
    transform: scale(1.02);               /* Sutil en mobile */
  }


}

/* Corrección adicional de fuente en headings móviles si se necesita */
@media (max-width: 480px) {
  .learning-header .headline { font-size: 1.75rem !important; }
  .card-title { font-size: 1.25rem !important; }
}



/* =========================================================
   ESTILOS: CONTENIDO MÁS USADO EN LATAM
========================================================= */

/* Helpers */
.mora-blue-text { color: var(--mora-blue) !important; }
.invisible-tech-text { color: var(--invisible-tech) !important; }

/* --- Sección y contenedor --- */
.latam-content-section {
  background: #fff;
  padding: 6rem 1.5rem;
  color: var(--dark-purple);
}
.latam-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
/* --- Header LATAM --- */
.latam-header {
  max-width: 800px;
  margin: 0 auto 3rem auto; /* centrado y con aire */
  text-align: center;
}

.latam-title {
  font-family: "Familjen Grotesk", sans-serif;
font-size: clamp(3rem, 3vw, 2.4rem) !important;
  line-height: 1.2;
  color: var(--core-black) !important;
  margin-bottom: 1rem;
}

/* Resaltado italic en mora-blue */
.latam-title .special-text {
  font-family: "STIX Two Text", serif;
  font-style: italic;
  color: var(--mora-blue);
}

/* Subtítulo de apoyo */
.latam-subtitle {
  font-family: "Inter", sans-serif;
  font-size: 1.25rem;
  color: var(--light-grey);
  font-weight: 400;
  margin-top: 0.5rem;
}


/* --- Grid --- */
.latam-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1rem;
}

/* --- Tarjeta base --- */
/* --- Tarjeta base --- */
.latam-card {
  grid-column: span 3;
  background: var(--mora-blue);
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
  padding: 1.5rem 1.25rem 1rem;
  display: flex;
  flex-direction: column;

  align-items: flex-start; /* icono + métrica alineados a la izquierda */
  gap: 0.4rem;
  min-height: 128px;
  transition: transform .18s ease, box-shadow .18s ease, opacity .6s ease, transform .6s ease;
  opacity: 0;
  transform: translateY(30px);
}
.latam-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(0,0,0,.16);
}
.latam-card.visible {
  opacity: 1;
  transform: translateY(0);
}

/* --- Iconos sutiles --- */
.latam-icon {
  width: 32px;
  height: auto;

  filter: brightness(0) saturate(100%) invert(88%) sepia(62%) saturate(446%) hue-rotate(27deg) brightness(99%) contrast(92%);
  /* filtro → tono verde suave */
}

/* --- Métrica grande (números) --- */
.latam-metric {
  position: relative;
  font-family: "Familjen Grotesk", sans-serif;
  font-size: clamp(1.5rem, 2.8vw, 2rem);
  font-weight: 700;
  line-height: 1;
  color: #fff !important; /* ahora blanco */
}
/* Prefijo + automático */
.latam-metric::before {
  content: "+";
  margin-right: .15rem;
  color: #fff; /* blanco también */
}

/* --- Texto tarjeta pequeña --- */
.latam-card-title {
  font-family: "Inter", sans-serif;
  color: #fff!important;
  font-size: 0.95rem;
}

/* --- Tarjetas anchas --- */
.latam-card--wide {
  grid-column: span 6;
  align-items: flex-start;
}
.latam-card--wide .latam-card-heading {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: clamp(1.5rem, 2.8vw, 2rem) !important;
  font-weight: 700 !important;
  color: #fff !important; /* en blanco también */
  margin-bottom: .25rem;
}
.latam-card--wide .latam-card-sub {
  font-family: "Inter", sans-serif;
  color: #fff !important;
  opacity: .85;
    font-size: 1.25rem;
}


/* --- CTA --- */
.latam-cta-block {
  margin-top: 2.25rem;
  text-align: center;
}
.latam-cta-text {
 color: var(--dark-purple);
    font-family: Familjen Grotesk, sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem !important;
}
.latam-cta-button {
 display: inline-block;
  padding: 1rem 2rem;
  background: var(--invisible-tech);
  color: var(--core-black);
  border-radius: 12px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  transition: background .2s ease, transform .25s ease;
}
.latam-cta-button:hover {
    background: var(--mora-blue);
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.14);
}
.latam-cta-button:active { transform: translateY(1px); }

/* --- Responsivo --- */
@media (max-width: 1024px) {
  .latam-card { grid-column: span 6; }     /* 2 por fila */
  .latam-card--wide { grid-column: span 12; }
}
@media (max-width: 640px) {
.latam-title {

font-size: clamp(2rem, 2vw, 1.4rem) !important;

}
.latam-content-section {
padding: 2rem 0rem;
  border-radius: 24px;
}
  .latam-grid { gap: .75rem; }
  .latam-card { grid-column: span 12; }    /* 1 por fila */
  .latam-card { min-height: 100px; }
}
.latam-subtitle {

  font-size: 1rem;

}


/* =========================================================
   ESTILOS: Lista animada (fade + slide on scroll)
   – Usa tokens del sistema de diseño Crehana 2025
   – Todos los estilos de texto con !important
========================================================= */
/* ===== Sección general ===== */
.ai-helper-section {
  background: #FAFAFA !important;
  padding: 4rem 2rem !important;
  border-radius: 1rem;
}

.ai-helper-grid {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 2.5rem;
  align-items: stretch; /* mismas alturas */
}

/* ===== Columna Izquierda ===== */
.ai-left{
display: grid
;
}
.ai-title {
  text-align: left !important;
  font-family: "Familjen Grotesk", sans-serif !important;
  font-weight: 500 !important;
  font-size: clamp(1.9rem, 3.2vw, 2.6rem) !important;
  line-height: 1.15 !important;
  color: var(--core-black) !important; /* negro */
  margin-bottom: 1rem !important;
}
.ai-title-stix {
  font-family: "STIX Two Text", serif !important;
  font-style: italic !important;
  color: var(--mora-blue) !important; /* azul mora */
}

.ai-lead {
  text-align: left !important;
  font-family: "Inter", sans-serif !important;
  color: var(--core-black) !important;
  font-weight: 500 !important; /* resaltado con peso, no color */
  line-height: 1.65 !important;
  margin: 0 0 1.5rem 0 !important;
  max-width: 62ch !important;
}

.ai-brand {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-weight: 700 !important;
  color: var(--core-black) !important; /* ya no verde */
  margin-right: .25rem !important;
}

.ai-media {
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.08) !important;
  overflow: hidden !important;

}
.ai-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

/* ===== Columna Derecha ===== */
.ai-right { position: relative !important; }

.scroll-separator {
  position: absolute;
  left: -1.5rem;
  top: 0;
  width: 3px;
  height: 0%;
  border-radius: 999px;
  background: linear-gradient(to top, var(--mora-blue), transparent);
  transition: height 0.6s ease;
}

.scroll-separator.is-visible { height: 100%; }

/* Lista modernizada */
.animated-list {
  display: grid;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.anim-item {
  background: #fff;
  border-radius: 1rem;
  padding: 1rem;
  box-shadow: 0 6px 16px rgba(0,0,0,0.06);
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s ease;
}
.anim-item.is-visible { opacity: 1; transform: translateY(0); }

.anim-item-title {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 600 !important;
  margin-bottom: 0.4rem;
  color: var(--mora-blue) !important;
}

.anim-item-text {
  font-family: "Inter", sans-serif !important;
  color: var(--light-grey) !important; /* gris brand */
  line-height: 1.6;
}

/* Responsive */
@media (max-width: 980px) {
  .ai-helper-grid { grid-template-columns: 1fr; gap: 2rem; }
}
@media (max-width: 640px) {
  .ai-helper-section { padding: 3rem 1.25rem !important; }
  .anim-item { padding: 1rem; }
}


/* =========================
   MÉTRICAS / CARDS 4x4 (estilo trendy Crehana 2025)
   ========================= */
/* =========================
   MÉTRICAS / CARDS 4x4 (versión refinada Crehana 2025)
   ========================= */

/* ----- Layout general de la sección ----- */
.metrics-section.v2 {
  background-color: var(--mora-blue) !important;
  border-radius: 1rem;
  padding: 4rem 2rem;
  text-align: center;
}

/* Header */
.metrics-section.v2 .metrics-header {
  max-width: 760px;
  margin: 0 auto 3rem auto;
}

.metrics-section.v2 .metrics-header .headline {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: clamp(3rem, 3vw, 2.4rem) !important;
  color: #fff !important;
  margin-bottom: 0.75rem;
}

.metrics-section.v2 .metrics-header .subtitle {
  font-family: "Inter", sans-serif;
  font-size: 1.25rem !important;
  color: var(--off-white) !important;
  opacity: 0.9;
}

.invi-tech {
  color: var(--invisible-tech) !important;
}

/* ----- Grid 4x4 ----- */
.metrics-grid.grid-4x4 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.75rem;
  max-width: 1100px;
  margin: 0 auto 3rem auto;
}

/* ----- Card con glass y borde degradado ----- */
.metric-card {
  position: relative;
  overflow: hidden;
  text-align: left;
  border-radius: 16px;
  padding: 2rem; /* más aire interno */
  background: var(--off-white);
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
  transition: transform .35s ease, box-shadow .35s ease;
}

/* “Liquid border” siempre visible */
.metric-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: conic-gradient(
    from 180deg,
    var(--mora-blue),
    var(--invisible-tech),
    var(--mora-blue)
  );
  -webkit-mask: 
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  opacity: 1;
  pointer-events: none;
}

/* Hover animación container */
.metric-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 14px 28px rgba(0,0,0,0.14);
}

/* Imagen principal */
.card-image-wrap {
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 1rem;
  box-shadow: 0 6px 14px rgba(0,0,0,0.08);
  transition: transform .35s ease;
}

.metric-card:hover .card-image-wrap {
  transform: scale(1.03);
}

.card-main-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: transform .4s ease;
}

.metric-card:hover .card-main-image {
  transform: scale(1.02);
}

/* ----- Textos dentro de la card ----- */
.metric-card .card-title {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.12rem;
  line-height: 1.3;
  color: var(--mora-blue) !important;
  margin: 0 0 0.4rem 0 !important; /* menos espacio bajo el título */
}

.metric-card .card-text {
  font-family: "Inter", sans-serif;
  font-size: .96rem;
  color: var(--core-black);
  opacity: .9;
  margin: 0;
  line-height: 1.55;
  max-width: 58ch;
}

/* ----- CTA ----- */
.metrics-cta .cta-title {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.5rem;
  color: #fff;
  margin-bottom: 1rem !important;
  font-weight: 600;
}

.metrics-cta .cta-button {
  display: inline-block;
  padding: 1rem 2rem;
  background: var(--invisible-tech);
  color: var(--core-black);
  border-radius: 12px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  transition: background .2s ease, transform .25s ease;
}

.metrics-cta .cta-button:hover {
  background: var(--off-white);
  color: var(--mora-blue);
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.14);
}
/* ----- CTA Black----- */
.metrics-cta-black{
    text-align: center;
justify-self: center;
  align-items:center;
}
/* ----- CTA Black----- */
.metrics-cta-black .cta-title-black {
justify-self: center;
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.5rem;
  color: var(--dark-purple);
  margin-bottom: 1rem !important;
  margin-top: 2rem !important;
  font-weight: 600;
}

.metrics-cta-black .cta-button-black {
justify-self: center;
  display: inline-block;
  padding: 1rem 2rem;
  background: var(--invisible-tech);
  color: var(--core-black);
  border-radius: 12px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  transition: background .2s ease, transform .25s ease;
}

.metrics-cta-black .cta-button-black:hover {
  background: var(--off-white);
  color: var(--mora-blue);
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.14);
}
/* ----- Responsive ----- */
@media (max-width: 1100px) {
  .metrics-grid.grid-4x4 { gap: 1.5rem; }
}

@media (max-width: 980px) {
  .metrics-grid.grid-4x4 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
.metrics-grid.grid-4x4 {
  padding:1rem 1rem;
}
.metrics-section.v2 .metrics-header {
  max-width: 760px;
  margin: 0 auto 0rem auto;
}
  .metrics-section.v2 .metrics-header .headline {
    font-family: "Familjen Grotesk", sans-serif;
    margin-bottom: 1rem !important;
    font-size: 2rem !important;
  }
  .metrics-section.v2 { padding: 3rem 0rem; }
  .metrics-grid.grid-4x4 { grid-template-columns: 1fr; }
  .metric-card { padding: 1.25rem; }
  .metric-card .card-title { font-size: 1.05rem; }
  .metrics-cta .cta-button {padding:1rem 1rem; width: 100%; text-align: center; }

.metrics-cta {padding:1rem 1rem;}
}


/* =========================================================
   Resultados + Testimonios (HTML/CSS/JS comentado por módulos)
   ========================================================= */
.results-module.v2{
  background:#ffffff;
  padding:3rem 2rem;
}
.results-module.v2-dark{
  background:var(--mora-blue);
  padding:3rem 2rem;
border-radius: 1rem;
}
.results-container{
  max-width:1200px;
  margin:0 auto;
}

.results-header{
  text-align:left !important;
  margin-bottom:2.25rem !important;
}

.results-headline-dark{
  text-align:left !important;
  font-family:"Familjen Grotesk", sans-serif !important;
  font-size:clamp(1.9rem,3.6vw,2.4rem) !important;
  line-height:1.1 !important;
  color: var(--invisible-tech) !important;
  margin:0 0 .25rem 0 !important;
}

.results-subheadline-dark{
  font-family:"Familjen Grotesk", sans-serif !important;
  font-size:clamp(2rem,4.2vw,3rem) !important;
  line-height:1.1 !important;
  color: #fff !important;
  margin:0 !important;
}

.results-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.25rem;
}

.kpi-card{
  background: var(--off-white);
  border-radius: 1rem;
  border: 1px solid rgba(0,0,0,0.06);
  box-shadow: 0 8px 24px rgba(0,0,0,0.05);
  padding: 1.25rem;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
/* Contenedor superior: solo número y sufijo */
.kpi-top {
  display: inline-flex;
  align-items: baseline;
  gap: 0.25rem;
  margin-bottom: 0.25rem;
}

/* Número destacado */
.kpi-number {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--mora-blue);
  line-height: 1;
}

/* Sufijo (%) */
.kpi-suffix {
  font-family: "Familjen Grotesk", sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--mora-blue);
  line-height: 1;
}

/* Label pasa a la línea de abajo */
.kpi-label-strong {
  display: block;              /* Forzar nueva línea */
  margin-top: 0.25rem;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--mora-blue);
}

/* Texto explicativo */
.kpi-text {
  font-family: "Inter", sans-serif;
  font-size: 0.95rem;
  color: var(--core-black);
  margin-top: 0.3rem;
  line-height: 1.5;
}


.results-footnote-dark{
  margin-top:1.5rem !important;
margin-bottom:1rem !important;
  display:flex;
  align-items:center;
  gap:.5rem;
  font-family:"Inter", sans-serif !important;
  font-size:.95rem !important;
  color: #fff !important;
}

.results-footnote-dark img{
opacity: 0.8;
  display:inline-block;
  height:auto;
filter: brightness(0) invert(1) opacity(0.8);
}
.img-dark-tint{
opacity: 0.8;
  display:inline-block;
  height:auto;
filter: brightness(0) invert(1) opacity(0.8);}

@media (max-width: 1024px){
  .results-module.v2{ padding:4.5rem 0rem; }
  .results-kpis{ grid-template-columns:1fr; gap:1rem; }
}



/* ================================
   SECCIÓN: Historias de Éxito
   ================================ */
/* =========================================================
Testimonios — estilos coherentes con Crehana 2025
========================================================= */
.success-stories-section {
  padding: 3rem 2rem;
  max-width: 1200px;
  margin: 0 auto;
}

/* Título */
.success-stories-title {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(2rem, 3.8vw, 3rem) !important;
  color: var(--mora-blue) !important;
  text-align: left !important;
  margin: 0 0 2rem 0 !important;
}

/* Layout contenedor */
.success-stories-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  justify-content: center;
}

/* Tarjeta */
.story-card {
  height: fit-content;
  max-width: 360px;
  width: 100%;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  text-align: left;
  background: #fff;
  border: 1px solid rgba(38, 38, 38, 0.08);
  border-radius: 1rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  position: relative;
  overflow: hidden;
}

.story-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 4px 0 0 4px;
  opacity: .9;
}

/* Client info en columna */
.client-info.vertical {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: .75rem;
}

/* Logos en escala de grises */
.company-logo {
  max-height: 60px;
  width: auto;
  object-fit: contain;
  margin-bottom: .5rem;
}
.company-logo.grayscale {
  filter: grayscale(100%);
  opacity: 0.9;
}

/* Tipografías */
.author-name {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--core-black) !important;
  margin: 0 0 .1rem 0 !important;
}

.stars-container {
  font-family: "Inter", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1 !important;
  color: #F5A524 !important; /* dorado */
  margin: .1rem 0 .25rem 0 !important;
}

.author-company {
  font-family: "Inter", sans-serif !important;
  font-size: .95rem !important;
  color: var(--light-grey) !important;
  margin: 0 !important;
}

/* Contenido */
.story-content {
  display: flex;
  flex-direction: column;
}

/* Texto colapsado */
.story-quote {
  font-family: "Inter", sans-serif !important;
  font-size: 0.95rem !important; /* más pequeño */
  line-height: 1.55 !important;
  color: var(--core-black) !important;
  margin: .25rem 0 0 0 !important;
  position: relative;
  padding-left: 1.1rem;
  max-height: 4.5rem;
  overflow: hidden;
  transition: max-height .4s ease;
}
.story-quote::before {
  content: "“";
  position: absolute;
  left: 0;
  top: -0.15rem;
  font-family: "STIX Two Text", serif !important;
  font-style: italic !important;
  font-size: 1.4rem;
  color: var(--mora-blue);
}
/* Degradado */
.story-quote::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2rem;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
  pointer-events: none;
  transition: opacity .3s ease;
}

/* Expandido */
.story-card.expanded .story-quote {
  max-height: 1000px;
}
.story-card.expanded .story-quote::after {
  opacity: 0;
}

/* Botón ver más */
.see-more {
  margin-top: .5rem;
  align-self: flex-start;
  background: transparent;
  border: none;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--mora-blue);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: .4rem;
  transition: color .3s ease;
}
.see-more:hover {
  color: #2d0ecf;
}

/* Flecha simple como triángulo */
.arrow {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: .35rem solid transparent;
  border-right: .35rem solid transparent;
  border-top: .45rem solid currentColor; /* triángulo ▼ */
  transition: transform .3s ease;
}
/* Cuando abre */
.story-card.expanded .arrow {
  transform: rotate(180deg);
}

/* Responsive */
@media (max-width: 980px) {
  .success-stories-section {
    padding: 4.5rem 0rem;
  }
}
@media (max-width: 640px) {
  .success-stories-container {
    flex-wrap: nowrap;              
    overflow-x: auto;              
    scroll-snap-type: x mandatory; 
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1rem;
    justify-content: flex-start !important; /* ✅ siempre arranca a la izquierda */
  }
  .story-card {
    flex: 0 0 85%;                 
    max-width: 85%;
    scroll-snap-align: start;      
  }
  .company-logo {
    width: 64px;
  }
  /* Ocultar scrollbar */
  .success-stories-container::-webkit-scrollbar {
    display: none;
  }
  .success-stories-container {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}


/* =========================================================
   FAQs — Crehana 2025 (dos columnas en desktop)
   ========================================================= */
.faqs-section {
  background: #fff;
  padding: 3rem 2rem;
}

.faqs-container {
  max-width: 1100px;
  margin: 0 auto;
}

.faqs-title {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(2rem, 3.5vw, 3rem) !important;
  color: var(--mora-blue) !important;
  text-align: left !important;
  margin-bottom: 0.5rem !important;
}

.faqs-subtitle {
  font-family: "Inter", sans-serif !important;
  font-size: 1.125rem !important;
  color: var(--core-black) !important;
  text-align: left !important;
  margin-bottom: 2rem !important;
}

/* GRID de FAQs */
.faq-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 columnas en desktop */
  gap: 1rem 1.5rem; /* espacio entre filas y columnas */
}

/* Ítems */
.faq-item {   

height: fit-content;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  overflow: hidden;
  background: var(--off-white);
  transition: all 0.3s ease;
}

.faq-item.open { 
  border-color: var(--mora-blue);
  box-shadow: 0 6px 16px rgba(0,0,0,0.06);
}

/* Pregunta */
.faq-question {
  width: 100%;
height: 90px;

  text-align: left;
  background: transparent;
  border: none;
  outline: none;
  padding: 1rem 2.5rem 1rem 1.25rem;
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  color: var(--core-black) !important;
  cursor: pointer;
  position: relative;
  white-space: normal;
}

.faq-question::after {
  content: "+";
  position: absolute;
  right: 1rem;
  font-size: 1.25rem;
  color: var(--mora-blue);
  transition: transform 0.3s ease;
}

.faq-item.open .faq-question::after {
  content: "–";
  transform: rotate(180deg);
}

/* Respuesta */
.faq-answer {height: 0px;
  max-height: 0px;
  overflow: hidden;
  padding: 0 1.25rem;
  font-family: "Inter", sans-serif !important;
  font-size: 1rem !important;
  color: var(--light-grey) !important;
  line-height: 1.6;
  transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq-item.open .faq-answer {
height: fit-content;
 max-height: 1000px;
  padding: 0.75rem 1.25rem 1rem;
}

/* Responsive */
@media (max-width: 768px) {
  .faq-list {
    grid-template-columns: 1fr; /* una columna en mobile */
  }
}

@media (max-width: 640px) {
  .faq-question {
    font-size: 1rem !important;
    line-height: 1.4;
    padding-right: 2.75rem;
  }
  .faqs-section {
    padding: 4rem 1rem;
  }
}





/* =========================================================
   Sección Final — CTA Mora Blue
   ========================================================= */
/* =========================================================
   Sección Final — CTA Mora Blue (centrado, jerarquía clara)
   ========================================================= */
.final-cta-section {
  border-radius: 1rem;
  background: var(--mora-blue);
  padding: 4rem 2rem;
  color: white;
  text-align: center;
}

.final-cta-container {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

/* ===== Título ===== */
.final-cta-title {
  font-family: "Familjen Grotesk", sans-serif !important;
  font-size: clamp(1.5rem, 3.5vw, 2.8rem) !important;
  font-weight: 700 !important;
  line-height: 1.25;
  margin: 0;
  color: #fff !important;
}

.final-cta-title .ai-title-stix {
  font-family: "STIX Two Text", serif !important;
  font-style: italic !important;
  display: block;

  font-size: 1.1em;
  color: #fff; /* mantiene blanco */
}

.final-cta-highlight {
  font-family: "STIX Two Text", serif !important;
  font-style: italic !important;
  color: var(--invisible-tech) !important; /* verde highlight */
}

/* ===== Subtítulo ===== */
.final-cta-subtitle {
  font-family: "Inter", sans-serif !important;
  font-size: 1.1rem !important;
  line-height: 1.6;
  color: var(--off-white);


}

/* ===== Botón ===== */
.final-cta-button {
   display: inline-block;
  padding: 1rem 2rem;
  background: var(--invisible-tech);
  color: var(--core-black);
  border-radius: 12px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  transition: background .2s ease, transform .25s ease;
}

.final-cta-button:hover {
   background: var(--off-white);
  color: var(--mora-blue);
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.14);
}

/* ===== Responsive ===== */
@media (max-width: 640px) {
  .final-cta-title {
    font-size: 1.9rem !important;
  }
  .final-cta-subtitle {
    font-size: 1rem !important;
  }
.final-cta-section {
  border-radius: 1rem;
  padding: 1rem 1rem;

}
}