@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");

html {
  font-family: "Poppins", serif;
  background-color: #f0f0f0;
  width: 100% !important;
  overflow-x: hidden;
}

body {
  font-family: "Poppins", serif;
  width: 100% !important;
  overflow-x: hidden;
  background-color: #f0f0f0;
}

.lato {
  font-family: "Lato", serif;
}

.roboto {
  font-family: "Roboto", serif;
}

.section-diagonal {
  position: relative;
  z-index: 2;
}

.section-diagonal::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.section-dark {
  z-index: 3; /* Sit on top of the following light section */
  color: #fff !important;
}

.section-dark::before {
  background: #323231;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 20vw), 0 100%);
}

.section-light {
  margin-top: -20vw;
  padding-top: 20vw !important;
  color: black;
  z-index: 2;
  pointer-events: none;
}

.section-light > * {
  pointer-events: auto;
}

.section-light::before {
  background: #a5ab9f;
  opacity: 0.52;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 20vw), 0 100%);
}

.bg-nav1 {
  background-color: #9390907b;
  border-radius: 34px;
  opacity: 1;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.active {
  font-weight: bold;
}

.btn-contact {
  border: 1px solid #707070;
  color: #a5ab9f !important;
}

.btn-contact:hover {
  border: 1px solid #707070;
  color: #a5ab9f !important;
  background-color: #707070;
}

.btn-services {
  background-color: #000000;
  color: #fff;
}

.btn-services:hover {
  background-color: #464545d0;
  color: Ver Todos los Servicios;
}

.details_left {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/detalle_gray.svg") !important;
  background-position: top 20% right -15%;
  background-size: 80vh;
  background-repeat: no-repeat;
  z-index: 1;
  pointer-events: none;
  clip-path: polygon(0 10, 100% 0, 100% calc(100% - 20vw), 0 100%);
}

.details_left.gray {
  background-image: url("../img/detalle_gray.svg") !important;
}

.details_right {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/detalle_izquierda.svg") !important;
  background-position: bottom 0% left -30%;
  background-size: 75vh;
  background-repeat: no-repeat;
  z-index: 999;
  pointer-events: none;
  clip-path: polygon(0 10, 100% 0, 100% calc(100% - 20vw), 0 100%);
}

.section-overlap::before {
  clip-path: polygon(
    0 20vw,
    /* Top Left: Starts down to accommodate the slope above */ 100% 0,
    /* Top Right: Starts at top */ 100% calc(100% - 20vw),
    /* Bottom Right: Cut Upwards */ 0 100% /* Bottom Left: Flat */
  );
  background: #323231 !important;
  opacity: 0.9;
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.section-overlap {
  margin-top: -20vw;
  padding-top: 20vw !important;
  padding-bottom: 17vw !important;
  color: black;
  background-color: transparent !important;
  z-index: 1;
  min-height: 100vh; /* Ensure background height since content is absolute */
}

.card-aliado {
  background: transparent;
  box-shadow: none;
  border: none;
  position: relative;
  z-index: 1000;
}

.section-overlap-light::before {
  clip-path: polygon(
    0 20vw,
    /* Top Left: Starts down to accommodate the slope above */ 100% 0,
    /* Top Right: Starts at top */ 100% 100%,
    /* Bottom Right: Cut Upwards */ 0 100% /* Bottom Left: Flat */
  );
  background: #a5ab9f;
  opacity: 0.52;
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.section-overlap-light {
  margin-top: -20vw;
  padding-top: 20vw !important;
  padding-bottom: 3vw !important;
  color: black !important;
  z-index: 0;
  min-height: 100vh; /* Ensure background height since content is absolute */
}

.accordion-aliado {
  background: #ffffff7b; /* More transparent to match menu glass effect */
  box-shadow: 0px 4px 193px #00000005;
  mix-blend-mode: normal;
  opacity: 1;
  backdrop-filter: blur(50px) !important;
  -webkit-backdrop-filter: blur(50px) !important;
  border-radius: inherit;
}

.accordion-aliado .accordion-item {
  background-color: transparent;
  border: none;
  color: black; /* Ensure text is visible */
}

.accordion-aliado .accordion-button {
  background-color: transparent;
  box-shadow: none;
  color: black;
  font-weight: bold;
}

.accordion-aliado .accordion-button:not(.collapsed) {
  background-color: transparent;
  color: black;
  box-shadow: none;
}

.accordion-aliado .accordion-body {
  background-color: transparent;
}

.card-experience {
  border: 1px solid #707070;
  box-shadow: 0px 4px 193px #00000005;
}

.card-experience h5 {
  color: #000000a1;
}

.card-experience:hover {
  background-color: #00000096;
}

.card-experience:hover h5 {
  color: white;
}

.section-overlap-trabajo::before {
  clip-path: polygon(
    0 20vw,
    /* Top Left: Starts down to accommodate the slope above */ 100% 0,
    /* Top Right: Starts at top */ 100% calc(100% - 20vw),
    /* Bottom Right: Cut Upwards */ 0 100% /* Bottom Left: Flat */
  );
  background-image: url("../img/fondo_trabajo.png") !important;
  background-size: 110% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  opacity: 1; /* Increased opacity to plain 1 as requested 'see the image' */
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.section-overlap-trabajo {
  margin-top: -20vw;
  padding-top: 20vw !important;
  padding-bottom: 17vw !important;
  color: black;
  background: transparent !important;
  z-index: 1;
  min-height: 100vh; /* Ensure background height since content is absolute */
}

.card-vision {
  background-color: #ffffff89;
  opacity: 1;
  backdrop-filter: blur(30px) !important;
  -webkit-backdrop-filter: blur(30px) !important;
  border-radius: 43px !important;
}

.card-principios {
  height: 100%;
  min-height: 50px; /* Adjust based on content */
  display: flex;
  flex-direction: column;
  justify-content: left;
  align-items: left;
}

.card-principios:hover {
  border: 1px solid #707070 !important;
  background-color: #ffffff !important;
  justify-content: center !important;
  align-items: center !important;
}

.card-principios:hover h5,
.card-principios:hover p {
  color: #000000a1 !important;
  display: block !important;
  text-align: center !important;
}

.card-principios:hover img {
  display: none !important;
}

/* .montserrat{
    font-family: "Montserrat" !important;
}

.poppins{
    font-family: "Poppins" !important;
}


.btn-contact{
    background-color: #24A17A !important;
    color: #75FDD3 !important;
}

#value{
    background-image: url('../img/value_bg.jpg') !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.men{
    background-image: url('../img/men.jpg') !important;
    background-position: center bottom;
    background-size: 100%;
    background-repeat: no-repeat;
}

#slogan{
    background-color: #24A17A;
}

#contact{
    background-color: #F6F6F6;
}

#foot{
    background-color: #333333;
}

#footN{
    background-color: #222222;
}

h3, h4, p, h5, small, #text-card, #line1, #line2, #text-check, #values2, #text71, #text72, #text73{
    opacity: 0;
} 

@keyframes aparecerTexto {
    0% {
        opacity: 0; 
    }
    100% {
        opacity: 1; 
    }
}

.image-left {
    animation: slideFromLeft 1s ease-out forwards;
}

.image-right {
    animation: slideFromRight 1s ease-out forwards;
}

#image1, #image2{
    opacity: 0;
}*/

/* Keyframes para animación de entrada desde la izquierda 
@keyframes slideFromLeft {
    0% {
        opacity: 0;
        transform: translateX(-300px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}*/

/* Keyframes para animación de entrada desde la derecha 
@keyframes slideFromRight {
    0% {
        opacity: 0;
        transform: translateX(300px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.texto-animado {
    animation: aparecerTexto 0.5s steps(30) 0.5s forwards; 
}

@media (max-width: 3060px) {
}

@media (max-width: 1280px) {
}

LG */
@media (max-width: 1199px) {
}

/* MD */
@media (max-width: 991px) {
}

/* SM */

@media (min-width: 768px) {
  .card-aliado {
    position: absolute;
    width: 100%;
    top: 3rem; /* Matches pt-5 padding */
    z-index: 1000;
  }
}

@media (max-width: 767px) {
  .showPhone {
    display: block !important;
  }
  .hiddenPhone {
    display: none !important;
  }
  .centerP {
    text-align: center !important;
    align-items: center !important;
    align-content: center !important;
    display: block !important;
    justify-content: center !important;
  }

  .mt5P {
    margin-top: 3rem !important;
  }

  .mt0P {
    margin-top: 0rem !important;
  }

  .pb3P {
    padding-bottom: 0rem !important;
  }

  .justify-content-centerP {
    justify-content: center !important;
  }

  .section-overlap-trabajo::before {
    clip-path: polygon(
      0 20vw,
      /* Top Left: Starts down to accommodate the slope above */ 100% 0,
      /* Top Right: Starts at top */ 100% calc(100% - 20vw),
      /* Bottom Right: Cut Upwards */ 0 100% /* Bottom Left: Flat */
    );
    background: #323231 !important;
    opacity: 0.9;
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .section-overlap-trabajo {
    margin-top: -20vw;
    padding-top: 20vw !important;
    padding-bottom: 17vw !important;
    color: black;
    background-color: transparent !important;
    z-index: 1;
    min-height: 100vh; /* Ensure background height since content is absolute */
  }
  /*.logo_h{
        width: 100px;
    }
    .fele_log3{
        width: 150px;
    }
    .men{
        background-size: 0;
    }
    .m1P{
        margin-left: 1.5rem !important;
    }*/
}

/* XS */
@media (max-width: 575px) {
}

/* XS */
@media (max-width: 330px) {
}
