/*=========== TABLE OF CONTENTS ===========1. CSS Variables2. Utility CSS3. Common CSS==========================================*/
/*-------------------------------------  1. CSS Variables--------------------------------------*/
:root {
  /*------Color variables------*/
  --black_900: #080605;
  --black_900_01: #060403;
  --black_900_02: #000000;
  --black_900_0c: #0c0c0d0c;
  --black_900_19: #00000019;
  --black_900_26: #00000026;
  --black_900_4c: #0000004c;
  --blue_a200: #4f8df5;
  --blue_gray_100: #d5d1e0;
  --blue_gray_100_01: #d9d9d9;
  --blue_gray_100_02: #d5d5d5;
  --blue_gray_100_03: #cccaca;
  --blue_gray_100_04: #d4d4d4;
  --blue_gray_100_05: #dbd6d605;
  --blue_gray_400: #877d9b;
  --blue_gray_400_01: #897bad;
  --blue_gray_400_02: #857f9a;
  --blue_gray_50: #f1f1f1;
  --blue_gray_800: #3d375e;
  --blue_gray_800_01: #423f54;
  --blue_gray_800_02: #393a50;
  --blue_gray_800_03: #294661;
  --blue_gray_800_04: #33354c;
  --blue_gray_800_f2: #3d375ef2;
  --blue_gray_900: #3f2830;
  --blue_gray_900_01: #343148;
  --blue_gray_900_02: #252b45;
  --blue_gray_900_03: #362837;
  --blue_gray_900_04: #383635;
  --blue_gray_900_05: #323131;
  --blue_gray_900_06: #373129;
  --blue_gray_900_07: #2d3148;
  --blue_gray_900_08: #323044;
  --blue_gray_900_09: #3c332c;
  --blue_gray_900_10: #313047;
  --blue_gray_900_11: #34293b;
  --blue_gray_900_e5: #2b2b2de5;
  --cyan_200: #84f0d7;
  --deep_orange_100: #f5cfaa;
  --deep_orange_100_01: #f3cda9;
  --deep_orange_200: #fda793;
  --deep_orange_200_01: #fdb993;
  --deep_orange_200_02: #f9c29c;
  --deep_orange_200_03: #fca793;
  --deep_orange_200_04: #feb992;
  --deep_orange_200_05: #f7aa9c;
  --deep_orange_200_06: #f1be8f;
  --deep_orange_300: #e6945c;
  --deep_orange_300_01: #e6955d;
  --deep_orange_300_02: #e6965e;
  --deep_orange_300_03: #e88f6e;
  --deep_orange_300_04: #fe7e54;
  --deep_orange_300_05: #ff7a59;
  --deep_orange_300_06: #ee8d72;
  --deep_orange_300_07: #fe8d61;
  --deep_orange_300_08: #e5945d;
  --deep_orange_300_09: #fd8d61;
  --deep_orange_300_10: #f78c62;
  --deep_orange_300_11: #f17c58;
  --deep_orange_400: #e7734c;
  --deep_orange_400_01: #ee6d4e;
  --deep_orange_600: #eb5b14;
  --deep_orange_700: #e25110;
  --deep_orange_800: #ce5208;
  --deep_orange_800_01: #c9520a;
  --deep_orange_800_02: #d53d0f;
  --deep_orange_800_03: #cc5002;
  --deep_orange_800_04: #c6500b;
  --deep_orange_900: #c44f00;
  --deep_orange_900_01: #bf360c;
  --deep_orange_900_02: #953800;
  --deep_orange_a100: #f09f76;
  --deep_orange_a100_01: #f0a074;
  --deep_orange_a100_02: #e99e77;
  --deep_orange_a100_03: #fea171;
  --deep_orange_a100_04: #faa172;
  --deep_orange_a100_05: #f2a077;
  --deep_orange_a100_06: #e79a7a;
  --deep_orange_a100_07: #fea071;
  --deep_orange_a100_08: #f6a173;
  --deep_orange_a100_09: #e79b7b;
  --deep_orange_a100_10: #e89c7c;
  --deep_orange_a100_11: #e89b7b;
  --deep_purple_100_7f: #d8d6f07f;
  --deep_purple_200: #ac94ea;
  --deep_purple_300: #7e6ddd;
  --deep_purple_500: #594ccf;
  --deep_purple_500_01: #594bcf;
  --deep_purple_500_26: #594bcf26;
  --deep_purple_500_99: #594bcf99;
  --deep_purple_800: #46279b;
  --deep_purple_a700: #6d00cc;
  --gray_100: #f5f4f4;
  --gray_100_01: #f7f7f8;
  --gray_100_02: #f3f2f1;
  --gray_100_03: #f3f3f4;
  --gray_100_04: #f7f5f5;
  --gray_200: #e6e6ea;
  --gray_200_01: #efefef;
  --gray_200_02: #e9e9e9;
  --gray_200_03: #e9e8e8;
  --gray_200_04: #eaeaea;
  --gray_300: #e4e4e8;
  --gray_400: #bbbbbb;
  --gray_50: #fdfdfb;
  --gray_500: #9f9ea0;
  --gray_500_01: #9d9d9d;
  --gray_50_01: #f8f8f8;
  --gray_50_02: #fdfcfc;
  --gray_50_03: #fcfcfc;
  --gray_50_19: #f8f8f819;
  --gray_50_e5: #f8f8f8e5;
  --gray_600: #8d6666;
  --gray_600_01: #8a6565;
  --gray_600_02: #9a5d50;
  --gray_600_03: #8b6666;
  --gray_600_04: #8b6665;
  --gray_600_05: #8e6767;
  --gray_600_06: #8c6665;
  --gray_600_07: #8c6666;
  --gray_700: #7d5959;
  --gray_700_01: #7d5958;
  --gray_700_02: #7f5957;
  --gray_700_03: #7e5957;
  --gray_700_04: #636366;
  --gray_700_05: #894e42;
  --gray_700_06: #7c5959;
  --gray_700_07: #7d5a5a;
  --gray_800: #5e4e3e;
  --gray_800_01: #363347;
  --gray_800_02: #3b344a;
  --gray_800_03: #4a154b;
  --gray_800_04: #443d4f;
  --gray_800_05: #563e40;
  --gray_800_06: #5b3d3c;
  --gray_800_07: #49494a;
  --gray_800_08: #464646;
  --gray_800_09: #583e3f;
  --gray_800_10: #473e4d;
  --gray_800_11: #5c3d38;
  --gray_800_12: #473b4d;
  --gray_800_13: #463c49;
  --gray_800_14: #692e23;
  --gray_800_15: #6e3130;
  --gray_900: #1b1b20;
  --gray_900_01: #282522;
  --gray_900_02: #1c1b1f;
  --gray_900_03: #1b1e20;
  --gray_900_cc: #0d0536cc;
  --gray_900_e5: #1b1b20e5;
  --green_a100: #9debc0;
  --green_a400: #39e071;
  --green_a700: #25d366;
  --green_a700_01: #2ef43e;
  --green_a700_02: #0fa763;
  --indigo_100: #b9b2fa;
  --indigo_300: #807ceb;
  --indigo_300_01: #7f7cea;
  --indigo_50: #e8e7f6;
  --indigo_50_01: #dde6fa;
  --light_blue_400: #18bfff;
  --light_blue_800: #0079bf;
  --light_blue_800_01: #006fc1;
  --light_blue_a700: #007ee5;
  --light_green_300: #90f084;
  --light_green_500: #96bf48;
  --light_green_a100: #b7ffa8;
  --lime_300: #e1e17e;
  --lime_500: #caef45;
  --lime_900: #984c3a;
  --lime_900_01: #a4624a;
  --orange_100: #fedea7;
  --orange_100_01: #fed5a9;
  --orange_100_02: #fedbbb;
  --orange_100_03: #fddda0;
  --orange_100_04: #fddda1;
  --orange_100_05: #fad9b2;
  --orange_200: #f3c496;
  --orange_200_01: #fdbe73;
  --orange_200_02: #f2c396;
  --orange_200_03: #f2c395;
  --orange_200_04: #fec968;
  --orange_200_05: #eeb679;
  --orange_600: #f68601;
  --orange_800: #ed5f01;
  --orange_800_01: #ef5f00;
  --orange_800_02: #e37003;
  --orange_800_03: #e47001;
  --orange_800_04: #e47002;
  --orange_800_05: #ef6000;
  --orange_900: #cd5000;
  --pink_900: #773422;
  --pink_900_01: #763322;
  --pink_900_02: #763422;
  --purple_100: #f4bff7;
  --red_200: #e1b28d;
  --red_200_01: #cc9b7a;
  --red_300: #d78572;
  --red_300_01: #e6715c;
  --red_300_02: #d28b6e;
  --red_300_03: #e4876c;
  --red_300_04: #b67a5e;
  --red_300_05: #d87656;
  --red_300_06: #bd7e61;
  --red_300_07: #e19375;
  --red_400: #e75d43;
  --red_400_01: #de6d45;
  --red_400_02: #d45e3a;
  --red_400_03: #d45e3b;
  --red_500: #fa4140;
  --red_500_01: #fb3b3b;
  --red_600: #d84e31;
  --red_600_01: #dd4b39;
  --red_600_02: #db3e4d;
  --red_700: #e12127;
  --red_700_01: #ca332c;
  --red_800: #c53826;
  --red_800_01: #c53625;
  --red_900: #81261a;
  --red_900_01: #97412c;
  --red_900_02: #a22425;
  --red_900_03: #a83323;
  --red_900_04: #81251a;
  --red_a100: #fd8977;
  --red_a100_01: #ee8d73;
  --red_a100_02: #ef8e74;
  --red_a100_03: #ef8e73;
  --red_a200: #fb584e;
  --teal_200: #73c4c8;
  --teal_300: #4aa6be;
  --teal_50: #d4eef7;
  --teal_500: #05a281;
  --teal_500_01: #10a37f;
  --teal_500_02: #1d9583;
  --teal_700: #03746a;
  --teal_800: #0c735a;
  --teal_900: #02363c;
  --teal_900_01: #08524a;
  --white_a700: #fffffd;
  --white_a700_00: #ffffff00;
  --white_a700_01: #ffffff;
  --white_a700_02: #fefffe;
  --white_a700_4c: #ffffff4c;
  --white_a700_7f: #ffffff7f;
  --white_a700_99: #ffffff99;
  --yellow_400: #f8eb57;
  /*------Shadow variables------*/
  --shadow-xs: 0 5px 13px 0 #00000019;
  --shadow-sm: 0 1px 3px 0 #0000004c;
  --shadow-md: 0 4px 4px -4px #0c0c0d0c;
  --shadow-lg: 0 1px 4px 0 #0c0c0d0c;
  --shadow-xl: 0 4px 4px 0 #0000004c;
  --shadow-2xl: -7px -5px 16px 2px #0c0c0d0c;
  --shadow-3xl: -8.11px 4px 4px -4px #0c0c0d0c;
  --shadow-4xl: 0 2px 3px 0 #0000004c;
  --shadow-5xl: 0 2px 6px 2px #00000026;
  /*------Border radius variables------*/
  --radius-xs: 3px;
  --radius-sm: 4px;
  --radius-md: 5px;
  --radius-lg: 6px;
  --radius-xl: 8px;
  --radius-2xl: 10px;
  --radius-3xl: 12px;
  --radius-4xl: 16px;
  --radius-5xl: 18px;
  --radius-6xl: 20px;
  --radius-7xl: 22px;
  --radius-8xl: 24px;
  --radius-9xl: 28px;
  --radius-10xl: 30px;
  --radius-11xl: 36px;
  --radius-12xl: 304px;
  /*------Spacing variables------*/
  --space-xs: 0.25rem;
  --space-sm: 0.38rem;
  --space-md: 0.5rem;
  --space-lg: 0.63rem;
  --space-xl: 0.69rem;
  --space-2xl: 0.75rem;
  --space-3xl: 0.88rem;
  --space-4xl: 0.94rem;
  --space-5xl: 1rem;
  --space-6xl: 1.13rem;
  --space-7xl: 1.25rem;
  --space-8xl: 1.38rem;
  --space-9xl: 1.63rem;
  --space-10xl: 1.75rem;
  --space-11xl: 1.88rem;
  --space-12xl: 2.25rem;
  --space-13xl: 2.5rem;
  --space-14xl: 2.75rem;
  --space-15xl: 2.88rem;
  --space-16xl: 3.75rem;
}

/*-------------------------------------  2. Utility CSS--------------------------------------*/
.flex-col-center-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-left: 7rem;
}

.flex-col-center-centerw {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-left: 0rem;
}

.flex-col-center-start {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

/*-------------------------------------  3. Common CSS--------------------------------------*/
.home {
  /*overflow-x: scroll;*/
  width: 100%;

  @media (min-width: 2850px) {
    width: 60%;
    overflow-x: hidden;
  }
}

.header {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  display: flex;
  background-color: var(--white_a700_01);
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid var(--gray_200);

  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 999;

  transition: all 0.3s ease;

  @media only screen and (max-width: 550px) {
    padding-top: var(--space-7xl);
    padding-bottom: var(--space-7xl);
  }

  /* En móvil mantener position fixed siempre y superponer */
  @media (max-width: 960px) and (min-width: 1px) {
    .header.expanded {
      position: fixed;
      /* Asegurar que ocupe todo el ancho y se superponga */
      left: 0;
      right: 0;
      /* Fondo para cubrir el contenido debajo */
      background-color: var(--white_a700_01);
      /* Sombra para separar visualmente del contenido */
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }
  }
}

.header svg {
  height: 55px;
  width: 200px;

  @media (max-width: 960px) and (min-width: 1px) {
    height: 45px;
    width: 150px;
  }
}

body {
  padding-top: calc(var(--space-11xl) * 2 + 2rem);

  @media (min-width: 2650px) {
    padding-top: calc(var(--space-11xl) * 2 + 2rem);
    display: flex;
    justify-content: center;
  }

  @media (min-width: 1650px) {
    padding-top: calc(var(--space-11xl) * 2 + 2rem);
  }

  @media (max-width: 960px) and (min-width: 1px) {
    padding-top: calc(var(--space-7xl) * 2 + 2rem);

    /* El contenido NO se desplaza cuando el menú está expandido */
  }
}

.header.expanded {
  height: auto;
}

.header__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-7xl);
  width: 100%;
  position: relative;
  flex-wrap: wrap;
}

@media (max-width: 960px) and (min-width: 1px) {
  .header__row {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .header__row.expanded {
    flex-direction: column;
    align-items: flex-start;
  }
  .header__row.expanded .dots-menu {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
  }
}

.header__logo {
  height: 3rem;
  width: 11.38rem;
  object-fit: contain;
}

.header__menu {
  margin-right: 2.5rem !important;
  gap: var(--space-16xl);
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;

  @media (max-width: 960px) and (min-width: 1px) {
    gap: var(--space-7xl);
  }
}

.header__menu-item {
  letter-spacing: 0rem;
}

.dots-menu {
  display: none !important;
  display: inline-flex;
  width: 25px;
  height: 25px;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  position: relative;

  transform-origin: 50% 50%;
  will-change: transform;
  transition: transform 0.3s ease;
}

.dots-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 3px;
  width: 100%;
  height: 100%;
}

.dot {
  width: 5px;
  height: 5px;
  background-color: var(--gray_900, #1b1b20);
  border-radius: 50%;
  transition: background-color 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}

/* ROTACIÓN Y VISIBILIDAD DE PUNTOS AL ACTIVAR */
.dots-menu.active {
  transform: rotate(360deg);
}

.dots-menu.active .dot {
  opacity: 0;
}

.dots-menu.active .dot:nth-child(1),
.dots-menu.active .dot:nth-child(3),
.dots-menu.active .dot:nth-child(5),
.dots-menu.active .dot:nth-child(7),
.dots-menu.active .dot:nth-child(9) {
  opacity: 1;
  background-color: var(--accent-color, #000000);
}

.dots-menu.active .dot:nth-child(5) {
  transform: scale(1.2);
}

/* -------------------------------------------------- */
/* NAVEGACIÓN DESKTOP / MÓVIL */
/* -------------------------------------------------- */
.header__nav {
  display: block;

  @media (max-width: 960px) and (min-width: 20px) {
    display: none;
    width: 100%;
    order: 3;
    margin-top: 1rem;
    margin-bottom: 1rem;
    overflow: visible;
    position: static;
    box-shadow: none;
    background-color: transparent;
    border-radius: 0;
  }
}

.header__nav.show-mobile-menu {
  display: block;
  animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media (max-width: 960px) and (min-width: 1px) {
  .header__row.expanded {
    flex-direction: column;
    align-items: flex-start;
  }
  .dots-menu {
    display: inline-flex !important;
  }

  .header__row.expanded .dots-menu {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
  }

  .header__menu {
    margin-right: 0 !important;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.5rem;
    width: 100%;
  }

  .header__menu li {
    width: 100%;
    text-align: left;
    border-bottom: 0px solid var(--gray_200);
  }
  .header__menu li:last-child {
    border-bottom: none;
  }

  .header__menu-item {
    font-size: 0.9rem;
    display: block;
    padding: var(--space-xl) 0;
    font-weight: 600 !important;
  }
  .header__menu-item:active {
    background-color: var(--gray_100, #f5f5f5);
  }
}

.arrow_righthm {
  height: 2.3rem;
  margin-top: 0.3rem;
  margin-bottom: 0rem;
  width: 2rem;
  object-fit: contain;

  @media (max-width: 960px) and (min-width: 1px) {
    margin-top: 0.3rem;
  }
}

.arrow_right {
  height: 2.3rem;
  margin-top: 0.3rem;
  margin-bottom: 0rem;
  width: 2rem;
  object-fit: contain;

  @media (max-width: 960px) and (min-width: 1px) {
    margin-top: 0.3rem;
    width: 2rem;
    height: 2rem;
  }
}

.services-section__description-span-1 {
  color: var(--green_a400);
}

.services-section__description-span {
  color: var(--white_a700_01);
}

.content-section__column-info {
  gap: var(--space-2xl);
  display: flex;
  align-self: stretch;
  flex-direction: column;
  align-items: flex-start;
  margin: 0% 0% 0% 0% !important;

  @media (min-width: 1650px) {
    gap: 1rem;
    display: flex;
    align-self: stretch;
    flex-direction: column;
    align-items: flex-start;
    margin: 3% 0% 0% 0% !important;
  }
}

.user-data-form__label {
  color: var(--gray_500) !important;
}

.section__column--thumbnails {
  gap: var(--space-7xl);
  display: flex;
  flex-direction: column;
}

.faqsection__item-3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-top: solid 1px #80808036;

  @media (max-width: 960px) and (min-width: 1px) {
    display: flex;
    flex-direction: column;
    align-items: center;
    border-top: solid 0px #80808036;
  }
}

.column-1 {
  padding-left: 3.5rem;
  padding-right: 3.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;

  @media (min-width: 1650px) {
    padding-left: 3.5rem;
    padding-right: 3.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  @media (max-width: 960px) and (min-width: 1px) {
    padding-left: var(--space-7xl);
    padding-right: var(--space-7xl);
  }
}

.section__title-2 {
  letter-spacing: -0.06rem;
  text-align: center;
  align-self: center;
  line-height: 4.5rem;
  width: 54%;

  @media (min-width: 1650px) {
    letter-spacing: -0.06rem;
    text-align: center;
    align-self: center;
    line-height: 4.5rem;
    width: 58%;
  }

    @media (max-width: 1370px) and (min-width: 1080px){
      width: 70%;
    }

  @media (max-width: 960px) and (min-width: 1px) {
    margin: 0rem 0rem 0rem 0rem;
    width: 90%;
  }
}

.section__title-2N {
  letter-spacing: -0.06rem;
  text-align: center;
  align-self: stretch;
  line-height: 3.6rem !important;
  padding: 0rem 2rem 0rem 2rem;

  @media (min-width: 1650px) {
    letter-spacing: -0.06rem;
    text-align: center;
    align-self: stretch;
    line-height: 5rem !important;
    padding: 0rem 0rem 0rem 0rem;
  }

  @media (max-width: 960px) and (min-width: 1px) {
    padding: 0rem 0rem 0rem 0rem;
    width: 100%;
    margin-left: 0rem;
    transform: scale(1);
    line-height: 2.5rem !important;
  }
}

.section__title-22N {
  letter-spacing: -0.06rem;
  text-align: center;
  align-self: stretch;
  line-height: 5rem;
  padding: 0rem 1rem 0rem 1rem;
  line-height: 3.8rem !important;

  @media (min-width: 1650px) {
    letter-spacing: -0.06rem;
    text-align: center;
    align-self: stretch;
    line-height: 5rem;
    padding: 0rem 0rem 0rem 0rem;
    line-height: 5rem !important;
  }

  @media (max-width: 960px) and (min-width: 1px) {
    padding: 0rem 0.3rem 0rem 0.3rem;
    width: 115%;
    margin-left: -1.5rem;
    line-height: 2.5rem !important;
    transform: scale(1);
  }
}

.agentes-ia__description-span {
  color: var(--gray_900);

  @media (max-width: 960px) and (min-width: 1px) {
    padding: 0rem;
  }
}

.agentes-ia__description-span2 {
  color: var(--gray_900);

  @media (max-width: 960px) and (min-width: 1px) {
    padding: 0rem 0rem 0rem 0rem;
  }
}

.agentes-ia__description-span-1 {
  color: var(--deep_purple_500_01);
}

@media (max-width: 960px) and (min-width: 1px) {
  .agentes-ia__description-spand {
    margin-left: -6rem;
  }
}

.agentes-ia__list {
  gap: 1.8rem;
  display: flex;
  justify-content: center;
  margin-top: 5rem;

  @media (min-width: 1650px) {
    gap: 2rem;
    display: flex;
    justify-content: center;
    margin-top: 4rem;
  }

  @media (max-width: 960px) and (min-width: 1px) {
    flex-direction: column;
    margin-top: 4rem;
  }
}

.user-profile__image {
  height: 2.5rem;
}

.section__column--navigation-secondary {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-top: 0rem;
  margin-left: 26rem;
  margin-right: -7rem;
  z-index: 999;
  position: relative;
  overflow: visible; /* Permite que el SVG sobresalga */
}

@media (max-width: 1370px) and (min-width: 1080px){ 
  .section__column--navigation-secondary {
  margin-right: -5rem;
  }
}

@media (max-width: 960px) and (min-width: 1px) {
  .section__column--navigation-secondary svg {
    width: 100px;
    height: 85px;
  }
  .section__column--navigation-secondary {
    margin-right: 0rem;
    margin-left: 18rem;
    margin-top: -1.3rem;
  }
}

.pointerhm {
  @media (max-width: 960px) and (min-width: 1px) {
    transform: scale(1.3);
  }
}

.section__column--navigation-secondaryAG {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 0rem;

  @media (max-width: 960px) and (min-width: 1px) {
    align-items: end;
  }
}

.services-section__content-text-span {
  font-weight: 700;
}

.user-profile__user-name {
  letter-spacing: 0rem;
  font-weight: 700 !important;
}

.section2 {
  padding-top: 5.88rem;
  padding-bottom: 5.88rem;
  background-color: var(--gray_50_01);
  border-top: 0px solid var(--gray_200);

  @media (max-width: 960px) and (min-width: 1px) {
    padding-top: 6rem;
    padding-bottom: 4rem;
  }
}

.sectiondes {
  margin-bottom: 0.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 8rem;
  padding-bottom: 9rem;
  background-color: var(--gray_50_01);
  background-image: url(../public/images/img_section_4.png);
  background-size: cover;
  background-repeat: no-repeat;
  border-top: 0px solid var(--gray_200);

  @media (min-width: 1650px) {
    padding-top: 9rem;
    padding-bottom: 10rem;
    background-color: var(--gray_50_01);
    background-image: url(../public/images/img_section_4.png);
    background-size: cover;
    background-repeat: no-repeat;
  }

  @media (max-width: 960px) and (min-width: 1px) {
    gap: 4.19rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 2.5rem;
    padding-bottom: 1.5rem;
  }

  @media only screen and (max-width: 550px) {
    gap: 2.81rem;
  }
}

/* -----------------------------
   Layout general del footer
------------------------------*/
.footer {
  padding-top: var(--space-9xl);
  padding-bottom: var(--space-9xl);
  display: flex;
  background-color: var(--blue_gray_800);
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer {
    padding-top: 2rem;
    padding-bottom: var(--space-7xl);
  }
}

/* -----------------------------
   Row principal del footer
------------------------------*/
.footer__row {
  margin-top: 1.63rem;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 1200px; /* Limitar anchura máxima para pantallas grandes */
}

@media only screen and (max-width: 1200px) {
  .footer__row {
    padding-left: var(--space-5xl);
    padding-right: var(--space-5xl);
  }
}

@media only screen and (max-width: 768px) {
  .footer__row {
    padding-left: var(--space-3xl);
    padding-right: var(--space-3xl);
  }
}

@media only screen and (max-width: 480px) {
  .footer__row {
    padding-left: var(--space-xl);
    padding-right: var(--space-xl);
    margin-top: 1rem;
  }
}

/* -----------------------------
   Columna principal
------------------------------*/
.footer__column {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

/* -----------------------------
   Logo del footer
------------------------------*/
.footer__logo {
  height: 2.88rem;
  width: 11rem;
  object-fit: contain;
}

@media only screen and (max-width: 480px) {
  .footer__logo {
    height: 2.5rem;
    width: 9rem;
    align-self: center; /* Centrar en móviles */
  }
}

/* -----------------------------
   Columna secundaria
------------------------------*/
.footer__column--secondary {
  margin-top: 2.13rem;
  gap: var(--space-12xl);
  display: flex;
  width: 94%;
  flex-direction: column;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__column--secondary {
    width: 100%;
    gap: var(--space-8xl);
  }
}

@media only screen and (max-width: 480px) {
  .footer__column--secondary {
    margin-top: 1.5rem;
    gap: var(--space-5xl);
  }
}

/* -----------------------------
   Fila de la columna secundaria
------------------------------*/
.footer__column--secondary__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-7xl);
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__column--secondary__row {
    flex-direction: column;
    gap: var(--space-5xl);
  }
}

/* -----------------------------
   Enlaces del footer
------------------------------*/
.footer__links-1 {
  margin-top: 0.63rem !important;
  width: 38%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-7xl);
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__links-1 {
    width: 100%;
    justify-content: flex-start;
    gap: var(--space-5xl);
  }
}

@media only screen and (max-width: 768px) {
  .footer__links-1 {
    justify-content: space-between;
  }
}

@media only screen and (max-width: 480px) {
  .footer__links-1 {
    flex-direction: column;
    gap: var(--space-3xl);
    margin-top: 0.3rem !important;
  }
}

/* -----------------------------
   Columna de contacto
------------------------------*/
.footer__contact-column {
  gap: var(--space-8xl);
  align-self: center;
  display: flex;
  width: 18%;
  flex-direction: column;
  align-items: flex-start;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__contact-column {
    width: 100%;
    gap: 1.5rem;
  }
}
/* -----------------------------
   Título de contacto
------------------------------*/
.footer__contact-title {
  color: var(--white_a700_01) !important;
}

/* -----------------------------
   Fila de redes sociales
------------------------------*/
.footer__social-media-row {
  gap: 1.5rem;
  display: flex;
  align-self: stretch;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__social-media-row {
    justify-content: start;
    gap: 1.5rem;
  }
}

/* -----------------------------
   Iconos de redes sociales
------------------------------*/
.footer__social-media-icon--whatsapp {
  height: 1.88rem;
}

@media only screen and (max-width: 480px) {
  .footer__social-media-icon--whatsapp {
    height: 1.5rem;
  }
}

/* -----------------------------
   Fila de información de contacto
------------------------------*/
.footer__contact-info-row {
  margin-right: 1.63rem;
  gap: var(--space-2xl);
  align-self: stretch;
  display: flex;
  align-items: flex-start;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__contact-info-row {
    margin-right: 0;
  }
}

@media only screen and (max-width: 480px) {
  .footer__contact-info-row {
    justify-content: start;
  }
}

/* -----------------------------
   Icono de información de contacto
------------------------------*/
.footer__contact-info-icon--lock {
  height: 1rem;
  align-self: center;
}

/* -----------------------------
   Email de información de contacto
------------------------------*/
.footer__contact-info-email {
  margin-bottom: 0.38rem;
}

/* -----------------------------
   Fila de partnership
------------------------------*/
.footer__partnership-row-1 {
  gap: var(--space-lg);
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 480px) {
  .footer__partnership-row-1 {
    flex-direction: column;
    gap: var(--space-md);
    align-items: start;
  }
}

/* -----------------------------
   Texto de partnership
------------------------------*/
.footer__partnership-text {
  color: var(--white_a700_99) !important;
  font-size: 1rem !important;
}

/* -----------------------------
   Logo de partnership
------------------------------*/
.footer__partnership-logo-1 {
  height: 3.63rem;
  width: 52%;
  object-fit: contain;
}

@media only screen and (max-width: 480px) {
  .footer__partnership-logo-1 {
    width: 80%;
    height: 3rem;
  }
}

/* -----------------------------
   Fila de copyright
------------------------------*/
.footer__copyright-row {
  margin-top: 1rem;
  padding-left: 3.5rem;
  padding-right: 3.5rem;
  gap: var(--space-3xl);
  display: flex;
  align-self: stretch;
  justify-content: center;
  align-items: flex-end;
  border-top: 1px solid var(--white_a700_4c);
}

@media (min-width: 1650px) {
  .footer__copyright-row {
    margin-top: 1rem;
    padding-left: 3.5rem;
    padding-right: 3.5rem;
    gap: var(--space-3xl);
    display: flex;
    align-self: stretch;
    justify-content: center;
    align-items: flex-end;
    border-top: 1px solid var(--white_a700_4c);
  }
}
@media (max-width: 960px) and (min-width: 1px) {
  .footer__copyright-row {
    flex-direction: row;
    align-items: center;
    padding-left: 0rem;
    padding-right: 0rem;
    gap: 0.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

/* -----------------------------
   Texto de copyright
------------------------------*/
.footer__copyright-text {
  margin-top: 0.88rem;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__copyright-text {
    text-align: center;
    margin-top: 0rem;
  }
}

/* -----------------------------
   Fila de términos
------------------------------*/
.footer__terms-row {
  width: 16%;
  display: flex;
  justify-content: center;
}

@media (min-width: 1650px) {
  .footer__terms-row {
    width: 13%;
    display: flex;
    justify-content: center;
  }
}

@media (max-width: 1370px) and (min-width: 1080px){ 
  .footer__terms-row {
  width: 22%;
  }
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__terms-row {
    width: 40%;
  }
}

/* -----------------------------
   Fila interna de términos
------------------------------*/
.footer__terms-inner-row {
  gap: 1.5rem;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

@media (max-width: 960px) and (min-width: 1px) {
  .footer__terms-inner-row {
    gap: 0.5rem;
  }
}

/* -----------------------------
   Divisor de términos
------------------------------*/
.footer__terms-divider {
  color: var(--white_a700_4c) !important;
  letter-spacing: 0rem;
}
