/*
 Theme Name:   RedBird
 Theme URI:    https://redbird.pe
 Description:  RedBird Theme
 Author:       Javier Enrique León 
 Author URI:   https://redbird.pe
 Version:      1
*/

@import url(css/vars.css);
@import url(css/bootstrap.min.css);

body {
  font-family: var(--FuentePrincipal) !important;
  color: var(--Oscuro);
  font-weight: 200;
  overflow-x: hidden;
}
img {
  max-width: 100%;
  height: auto;
}
::placeholder {
  color: var(--Oscuro);
}
.alignleft {
  float: left;
  margin: 0 1.5rem 1.5rem 0;
}
.alignright {
  float: right;
  margin: 0 0 1.5rem 1.5rem;
}
.centered,
.aligncenter {
  display: block;
  margin: 0 auto 1.5rem;
}

/* Fondos */
.fondo-complementario {
  background-color: var(--Complementario);
}
.fondo-oscuro {
  background-color: var(--Oscuro);
}
.fondo-principal {
  background-color: var(--Principal);
}
.fondo-principal-oscuro {
  background-color: var(--PrincipalOscuro);
}
.fondo-claro {
  background-color: var(--Claro);
}
.bg-cover {
  background-size: cover !important;
  background-position: center !important;
}

/* Colores texto */
.texto-principal {
  color: var(--Principal) !important;
}
.texto-claro {
  color: var(--Claro) !important;
}
.texto-claro-alternativo {
  color: var(--ClaroAlernativo);
}

/* Botones */
.boton-claro,
.boton-principal {
  font-size: 1.3rem;
  align-items: center;
  transition: gap ease-in 0.3s;
}
.boton-claro img,
.boton-principal img {
  width: 1.5rem !important;
  height: 1.5rem !important;
}
.boton-claro:hover,
.boton-principal:hover {
  gap: 1.5rem !important;
}

/* Cabecera */
.nav-link {
  font-size: 1.2rem;
  line-height: normal;
  font-weight: 700;
  color: var(--Claro);
  transition: color ease-in 0.4s;
}
.nav-link.active.dropdown-toggle {
  color: var(--Claro) !important;
}
.nav-link.active,
.nav-link:hover {
  color: var(--Principal) !important;
}
.nav-item:nth-last-child(1) .nav-link {
  border: solid 0.125rem var(--Claro);
  padding: 0.5rem 1.5rem;
  border-radius: 10rem;
  margin-left: 0.5rem;
  background-color: transparent;
  transition: all ease-in 0.4s;
}
.nav-item:nth-last-child(1) .nav-link:hover,
.nav-item:nth-last-child(1) .nav-link.active {
  background-color: var(--Claro);
}

/* Banner */
.banner,
.carousel-item .container .row .col-12 {
  height: calc(100vh - 146px);
}
.banner h1,
.banner h2 {
  font-size: 2.25rem;
  font-weight: 700;
  margin-bottom: 0;
}
.banner .texto {
  font-size: 1.5rem;
}
.carousel-indicators [data-bs-target] {
  height: 1.8rem;
  width: 1.8rem;
  border-radius: 20rem;
  padding: 0;
  border: none !important;
  transition: all ease 0.3s;
  background-color: var(--Claro);
  margin: 0 0.5rem;
}
.carousel-indicators .active {
  width: 3.5rem;
}

/* Carrusel servicios center */
.bleed-right {
  overflow-x: clip;

  /* Empuja el borde derecho hasta la orilla de la ventana */
  margin-right: calc(50% - 49.4vw); /* fallback */
  margin-right: calc(50% - 49.4dvw); /* viewport dinámico moderno */
}

/* controla cuánto se asoma el 4.º */
.carrusel-servicios {
  --peek: 7.5rem;
} /* ajusta a gusto */

/* deja ver el “peek” y reserva espacio a la derecha */
.carrusel-servicios .slick-list {
  overflow: visible;
  padding-right: var(--peek);
}

/* separación entre tarjetas */
.carrusel-servicios .slide {
  margin: 0 0.6rem;
}

/* asegúrate que las imágenes no desborden */
.carrusel-servicios img {
  display: block;
  width: 100%;
  height: auto;
}
.carrusel-servicios .slick-prev {
  z-index: 999999;
  left: 0 !important;
  top: -22px !important;
  width: 30px !important;
  height: 30px !important;
  background-size: contain !important;
}
.carrusel-servicios .slick-next {
  z-index: 999999;
  left: 35px !important;
  top: -22px !important;
  width: 30px !important;
  height: 30px !important;
  background-size: contain !important;
}

/* opcional: responsive (menos peek en móvil) */
@media (max-width: 991px) {
  .carrusel-servicios {
    --peek: 3rem;
  }
}
@media (max-width: 576px) {
  .carrusel-servicios {
    --peek: 0rem;
  }
}
.servicio {
  min-height: 30.5rem;
}
.servicio:hover {
  background: linear-gradient(
    to bottom,
    var(--Gradient) 0%,
    var(--Gradient2) 100%
  ) !important;
}
.servicios h2,
.servicios-1 h2,
.servicio-desarrollo h2 {
  font-size: 1.5rem;
}
.servicio .texto {
  opacity: 0;
  transition: opacity ease-in 0.4s;
}
.servicio:hover .texto {
  opacity: 1;
}

/* Servicios con flechas */
.servicios-1 h2 b,
.servicios-1 h2 strong {
  color: var(--Principal);
  font-weight: 600;
}
.carrusel-servicios-flechas h2 {
  font-size: 1.5rem;
}
.servicio-1 {
  border-radius: 1.5rem;
  background: linear-gradient(to bottom, #f8f8f8 0%, #eaeaea 100%) !important;
}
.slick-prev {
  left: -40px !important;
  background-image: url("images/prev.svg") !important;
}
.slick-next {
  right: -40px !important;
  background-image: url("images/next.svg") !important;
}
#desarrollo-tecnologico .slick-prev,
#servicios-y-soluciones .slick-prev {
  background-image: url(images/prev-w.png) !important;
}
#desarrollo-tecnologico .slick-next,
#servicios-y-soluciones .slick-next {
  background-image: url(images/next-w.png) !important;
}
.slick-prev,
.slick-next {
  width: 3rem !important;
  height: 3rem !important;
}
.slick-prev:before,
.slick-next:before {
  content: " " !important;
}

/* Marcas */
.marcas h2 {
  font-size: 1.5rem;
}
.marcas b,
.marcas strong {
  color: var(--Principal);
  font-weight: 600;
}

/* Servicios Desarrollo */
.servicio-desarrollo .titulo-s {
  z-index: 99;
}
.serv-tec:hover .titulo-s {
  display: none;
}
.serv-tec .content-s {
  opacity: 0;
  display: flex;
  transition: opacity ease 0.3s;
}
.serv-tec:hover .content-s {
  opacity: 1;
  background-color: var(--OscuroAlfa);
  width: calc(100% - 1rem);
}
.carrusel-marcas .slick-slide {
  padding: 0 16px;
}

/* Form */
form input[type="text"],
form input[type="tel"],
form input[type="email"] {
  border: solid 1px var(--Complementario);
  width: 100%;
  padding: 0.375rem 0.75rem;
}
form textarea {
  border: solid 1px var(--Complementario);
  padding: 0.375rem 0.75rem;
  height: 7.2rem;
  width: 100%;
}
form .wpcf7-spinner {
  display: none;
}
form .wpcf7-submit {
  background-color: var(--Principal);
  color: var(--Claro);
  border-radius: 5rem;
  text-transform: uppercase;
  padding: 0.625rem 1rem;
  font-weight: bold;
  border: none;
  transition: background-color ease 0.3s;
}
form .wpcf7-submit:hover {
  background-color: var(--Complementario);
}

/* Footer */
footer {
  border-top: 10px solid var(--PrincipalOscuro);
  font-weight: 400;
}
footer a {
  color: var(--Oscuro);
  text-decoration: none;
  transition: color ease-in 0.5s;
  font-weight: 400;
}
footer a:hover {
  color: var(--Principal);
}

/* Media queries */
@media (max-width: 991px) {
  body {
    font-weight: 400;
  }
  .navbar-brand img {
    max-width: 4rem;
  }
  .banner,
  .carousel-item .container .row .col-12 {
    height: auto;
  }
  .banner img,
  .banner-pagina img {
    max-height: 300px !important;
    width: auto !important;
  }
  .banner h1,
  .banner h2 {
    font-size: 1.8rem;
  }
  .banner .texto {
    font-size: 1rem;
  }
  .boton-claro {
    font-size: 1rem;
  }
  .carousel-indicators [data-bs-target] {
    height: 1.3rem;
    width: 1.3rem;
  }
  .carousel-indicators .active {
    width: 2.5rem;
  }
}
@media (max-width: 578px) {
  .slick-prev {
    left: 10px !important;
  }
  .slick-next {
    right: 10px !important;
  }
  .bleed-right {
    margin-right: 0;
  }
}
