.custom-slider-container:before {
  background-color: var(--tertiary) !important;
}
.custom-slider-container:after {
  background-color: var(--tertiary) !important;
}
.custom-page-header:after {
  background-color: var(--grey-500) !important;
}
.custom-page-header:before {
  background-color: var(--tertiary) !important;
}
#footer:before {
  background-color: var(--tertiary) !important;
}
.owl-carousel.nav-dark.nav-style-1 .owl-nav .owl-next,
.owl-carousel.nav-dark.nav-style-1 .owl-nav .owl-prev {
  color: #ffffff !important;
}
.owl-carousel.carousel-center-active-item-2 .owl-item.active > div {
  background: var(--secondary) !important;
}
.owl-carousel:not(.nav-arrows-1):not(.show-nav-title)
  .owl-nav
  button[class*='owl-'] {
  background-color: var(--secondary) !important;
  border-color: var(--secondary) var(--secondary) var(--secondary-300) !important;
  color: var(--secondary-inverse) !important;
}
.owl-carousel:not(.nav-arrows-1):not(.show-nav-title)
  .owl-nav
  button[class*='owl-']:hover,
.owl-carousel:not(.nav-arrows-1):not(.show-nav-title)
  .owl-nav
  button[class*='owl-'].hover {
  background-color: var(--secondary--100) !important;
  border-color: var(--secondary--300) var(--secondary--300) var(--secondary) !important;
}
.custom-justify {
  hyphens: none;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.content-section {
  display: none;
}
.content-section.active {
  display: block;
}

.nav-link {
  cursor: pointer; /* Cambia el cursor a una manito */
  text-decoration: none; /* Opcional, para quitar subrayado si es necesario */
}

.nav-link:hover {
  text-decoration: underline; /* Opcional, puedes añadir un subrayado al pasar el mouse */
}

@media (min-width: 1440px) {
  .container {
    max-width: 1440px !important;
  }
}

body {
  font-size: 18px;
}

.hero {
  background-size: cover;
  max-width: 1100px;
  width: 100%;
  max-height: 770px;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
}

@media (max-width: 1800px) {
  .hero {
    right: -13%;
  }
}

.custom-el-pos-1 {
  left: 15%;
  top: 17%;
}

.custom-el-pos-2 {
  right: 11%;
  top: 17%;
}

@media (min-width: 992px) {
  .custom-el-pos-3 {
    margin-top: -100px;
  }
}

@media (max-width: 991px) {
  .custom-col-1 {
    padding-top: 120px;
    margin-bottom: 50px;
  }
}

@media (min-width: 992px) and (max-width: 1399px) {
  .custom-col-1 {
    padding-top: 500px;
    margin-bottom: 50px;
  }
}

.custom-wrapper-1 > .container > .row {
  min-height: 935px;
}

h3 {
  text-transform: none;
  font-size: 2.4em;
  font-weight: 600;
  line-height: 1.1em;
  margin-bottom: 20px;
}

p {
  line-height: 1.6em;
}

@media (max-width: 991px) {
  .max-width-custom-1 {
    max-width: 485px !important;
  }
}

@keyframes btnDashEffect {
  0% {
    transform: translateX(0);
  }
  51% {
    transform: translateX(20px);
    opacity: 1;
  }
  52% {
    opacity: 0;
    transform: translateX(-20px);
  }
  53% {
    opacity: 0;
  }
  54% {
    opacity: 1;
  }
  100% {
    transform: translateX(0);
  }
}

.btn-dash:before {
  content: '';
  width: 20px;
  height: 2px;
  display: inline-block;
  background: var(--light);
  margin-right: 10px;
  position: relative;
  top: -3px;
}

.btn-dash:hover:before {
  animation: btnDashEffect ease-out 0.3s;
}

.btn-dash.text-color-primary:before {
  background: var(--primary);
}

#header .header-container {
  min-height: 100px;
}

@media (min-width: 992px) {
  #header .header-nav-main nav > ul > li > a {
    font-size: 18px;
    margin-left: 6px !important;
    margin-right: 6px !important;
  }
  #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-content {
    font-size: 20px;
  }
}

@media (max-width: 1480px) {
  #header .header-nav-main nav > ul > li > a {
    font-size: 16px;
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
}

.tabs-navigation-custom .nav-tabs .nav-item {
  position: relative;
}

.tabs-navigation-custom .nav-tabs .nav-item .nav-link {
  border: 0 !important;
  font-size: 18px;
  padding-left: 25px !important;
}

.tabs-navigation-custom .nav-tabs .nav-item .nav-link:not(.active) {
  color: var(--dark);
}

.tabs-navigation-custom .nav-tabs .nav-item .nav-link:before {
  content: '';
  width: 20px;
  height: 2px;
  display: inline-block;
  background: var(--dark);
  margin-right: 10px;
  position: relative;
  top: -3px;
  left: 0;
}

.tabs-navigation-custom .nav-tabs .nav-item .nav-link.active:before {
  background: var(--primary);
}

.custom-marquee {
  bottom: -30%;
}

.custom-marquee p {
  font-size: 500px;
  font-weight: 600;
}

.custom-outline-text-style-1 {
  text-shadow: -1px 1px 0 #000, 1px 1px 0 #000, 1px -1px 0 #000,
    -1px -1px 0 #000;
  letter-spacing: 0;
  color: var(--light);
  opacity: 0.08;
}

* Expertise */ .feature-box.custom-feature-box {
  margin-bottom: 19.2px;
  margin-bottom: 1.2rem;
}

.feature-box.custom-feature-box.custom-feature-box-active .feature-box-icon,
.feature-box.custom-feature-box:hover .feature-box-icon {
  box-shadow: 0px 0px 40px 4px rgba(200, 200, 200, 0.5);
}

.feature-box.custom-feature-box.custom-feature-box-active .feature-box-icon img,
.feature-box.custom-feature-box:hover .feature-box-icon img {
  transform: translate3d(-50%, -50%, 0) scale(1.1);
}

.feature-box.custom-feature-box .feature-box-icon {
  flex: 0 0 auto;
  background: transparent;
  width: 100px;
  position: relative;
  height: 100px;
  border: 6px solid #fff;
  border-radius: 100%;
  padding: 5px;
  margin-top: 0;
  overflow: hidden;
  z-index: 1;
  transition: ease box-shadow 300ms;
}

.feature-box.custom-feature-box .feature-box-icon img {
  position: absolute;
  width: 113%;
  top: 50%;
  left: 50%;
  z-index: 0;
  transform: translate3d(-50%, -50%, 0) scale(1);
  transition: ease transform 300ms;
}

@media (max-width: 991px) {
  .col-md-12
    .feature-box.feature-box-style-2.custom-feature-box
    .feature-box-info {
    padding-left: 115px;
  }
}

.custom-section-padding {
  padding: 60px 0px;
}

/*
* Text Background
*/
@media (min-width: 992px) {
  .custom-text-background {
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: 20% 30%;

    -webkit-text-fill-color: transparent;
  }
}

@media (min-width: 1200px) {
  .custom-big-font-size-1 {
    font-size: 6.9rem !important;
  }
}

/*
* Accordion
*/
.accordion-modern-status-primary.accordion-modern-status
  > .card:hover
  .card-header
  a.collapsed {
  color: var(--primary) !important;
}

.accordion.accordion-modern-status > .card .card-header a {
  position: relative;
  padding: 23px 30px;
  background-color: #f4f4f4;
  transition: ease background-color 300ms, ease color 300ms;
}

.escudo-footer {
  max-width: 100%;
  width: 80px;
}
.custom-box-shadow-2 {
  box-shadow: 0px 8px 31px -5px rgba(0, 0, 0, 0.07) !important;
}
.custom-card-style-2 .card-body {
  position: relative;
  background: var(--light);
  margin-top: -70px;
  max-width: 83%;
}

@media (min-width: 992px) {
  .custom-el-pos-3 {
    margin-top: -100px;
  }
}

/* teams */
.mfp-bg {
  background: var(--bs-primary) !important;
}

.thumb-info .thumb-info-wrapper:after,
.thumb-info .thumb-info-wrapper .thumb-info-wrapper-overlay:before {
  content: '';
  background: var(--secondary-rgba-60) !important;
}

.nav.nav-otro {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

/* Prevenir scroll horizontal en móviles */
html,
body {
  overflow-x: hidden;
  width: 100%;
  position: relative;
}

/* Ajustes para carruseles en móviles */
@media (max-width: 767px) {
  .owl-carousel {
    touch-action: pan-y pinch-zoom;
    max-width: 100%;
    margin: 0 auto;
  }

  .logo-item {
    padding: 5px;
  }

  .logo-item img {
    max-width: 100%;
    height: auto;
  }

  /* Ajuste específico para el carrusel de testimonios */
  .carousel-center-active-item-2 {
    padding: 0 15px;
  }

  /* Contenedor de carrusel */
  .custom-carousel-vertical-center-items {
    margin: 0 -15px;
    width: calc(100% + 30px);
    padding: 0 15px;
  }
}

/* Ajustes generales para los carruseles */
.owl-carousel .owl-stage-outer {
  overflow: hidden;
}

.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1, 1);
  transform: translateZ(0) scale(1, 1);
}

.owl-carousel.carousel-center-active-item-2 .owl-item > div {
  width: 95% !important; /* Default for mobile */
  padding: 20px !important;
  padding: 1.5rem !important;
}

@media (min-width: 1024px) {
  .owl-carousel.carousel-center-active-item-2 .owl-item > div {
    width: 66.6666% !important;
  }
}

/* Estilos del modal */
.modal {
  padding-right: 0 !important;
}

.modal-dialog {
  margin: 1.75rem auto;
  max-width: 800px;
}

.modal-content {
  border: none;
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  background-color: var(--light-rgba-90);
}

.modal .btn-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  z-index: 1060;
  padding: 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal .btn-close:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
  outline: none;
}

/* Optimizaciones de rendimiento para modales */
.modal {
  transform: translateZ(0);
  will-change: transform;
  backface-visibility: hidden;
}

.modal-dialog {
  transform: translateZ(0);
  will-change: transform;
  margin: 1.75rem auto;
  max-width: 800px;
}

.modal-content {
  transform: translateZ(0);
  will-change: transform;
  border: none;
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.modal .btn-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  z-index: 1060;
  padding: 0.5rem;
  margin: 0;
  width: 2rem;
  height: 2rem;
  opacity: 1;
  transition: transform 0.2s ease-in-out;
}

.modal .btn-close:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
  outline: none;
}

/* Optimizaciones para carruseles */
.owl-carousel {
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000px;
}

#escudoImageCol {
  position: relative;
  background-size: cover;
  background-position: center;
}

#escudoImageCol .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 0;
}

#escudoImage {
  position: relative;
  z-index: 1;
  opacity: 1 !important;
}
