nav.navbar .navbar-brand img {
    height: 80px; /* Altura del logo */
    width: auto;
}

/* Cambiar el color del texto del menú a blanco */
.navbar-custom .navbar-nav .nav-link {
    color: white;
}

/* Asegurar que el enlace activo y el foco también sean blancos */
.navbar-custom .navbar-nav .nav-link.active,
.navbar-custom .navbar-nav .nav-link:focus,
.navbar-custom .navbar-nav .nav-link:hover {
    color: white;
}

/* Sobrescribir el estilo del enlace activo que Bootstrap aplica */
.navbar-custom .navbar-nav .nav-item.active .nav-link {
    color: #625ac1 !important;
}

.navbar-custom {
    background-color: #202020; /* Color de fondo del Navbar */
}

/* Ajuste del tamaño y color de los íconos en la barra de navegación */
.nav-link i {
    font-size: 1.5rem;  /* Tamaño del ícono */
    color: #007bff;     /* Color del ícono */
    margin-right: 10px; /* Espacio entre el ícono y el texto */
}

/* Cambiar el color al pasar el cursor */
.nav-link:hover i {
    color: #28a745; /* Color cuando se hace hover sobre el enlace */
}

/* Estilos generales para los títulos de secciones */
.section-title {
    font-family: 'Roboto', sans-serif; /* Usar la fuente Roboto */
    font-size: 2.5rem; /* Tamaño de fuente más grande */
    font-weight: bold; /* Hacer que el título sea más pesado */
    text-align: center; /* Centrar el título */
    color: #007bff; /* Cambiar color del título a un tono azul */
    margin-bottom: 1.5rem; /* Espacio debajo del título */
    position: relative;
}

/* Línea decorativa debajo del título */
.section-title:after {
    content: '';
    display: block;
    width: 80px;
    height: 4px;
    background-color: #28a745; /* Línea de color verde */
    margin: 0.5rem auto; /* Centramos la línea debajo del título */
    border-radius: 2px;
}

/* Estilos específicos para el título de "Contacto" */
#contact .section-title {
    color: #007bff; /* Cambiar el color del título de Contacto a un tono azul */
}

/* Custom Styles */
#services i {
    transition: color 0.3s ease;
}

#services i:hover {
    color: #007bff;
}

/* Asegura que las imágenes del carrusel ocupen todo el contenedor sin distorsionarse */
.carousel-item img {
    width: 100%;
    height: auto;
    max-height: 600px; /* Ajuste para pantallas grandes */
    object-fit: cover; /* Mantiene la proporción de las imágenes */
}

@media (max-width: 768px) {
    .carousel-item img {
        max-height: 300px; /* Ajuste para dispositivos móviles */
    }
}

/* Formulario centrado y con diseño más estético */
form {
    max-width: 600px; /* Ancho máximo del formulario */
    margin: 50px auto; /* Centrado vertical y horizontal */
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); /* Sombra para mayor profundidad */
}

form .form-group {
    margin-bottom: 15px; /* Espacio entre los campos */
}

form label {
    font-weight: bold;
    margin-bottom: 5px;
}

form input[type="text"],
form input[type="email"],
form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box; /* Asegura que el padding no afecte el tamaño total */
    transition: border-color 0.3s;
}

form input[type="text"]:focus,
form input[type="email"]:focus,
form textarea:focus {
    border-color: #007bff; /* Color del borde en foco */
}

form button {
    width: 100%; /* Botón ocupa todo el ancho del formulario */
    padding: 10px;
    background-color: #007bff;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

form button:hover {
    background-color: #0056b3; /* Cambio de color al hacer hover */
}

/* Estilo Honeypot (invisible) */
form div[style="display:none;"] {
    display: none; /* Asegurarse que sea completamente invisible */
}


/* --------- Custom Enhancements --------- */
:root{
  --lt-primary:#6366f1; /* indigo */
  --lt-accent:#8b5cf6;  /* violet */
  --lt-dark:#0e1016;
  --lt-dark-2:#0f172a;
  --lt-light:#f8fafc;
}
body{ font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color: var(--lt-text); }
.bg-gradient-to{
  background: radial-gradient(1200px 400px at -10% -10%, rgba(14,165,233,.12), transparent),
              radial-gradient(800px 400px at 120% -10%, rgba(14,165,233,.08), transparent);
}
.navbar .nav-link{ color:#f1f5f9 !important; opacity:.95; }
.hero-img{ max-height: 420px; object-fit: cover; }
.service-card{ border:0; border-radius:1rem; }
.service-card .card-body{ transition: transform .2s ease, box-shadow .2s ease; }
.service-card:hover .card-body{ transform: translateY(-4px); box-shadow: 0 1rem 2rem rgba(0,0,0,.08); }
footer .btn{ border-radius: 999px; }
@media (max-width: 575.98px){
  .display-5{ font-size: 2rem; }
}
/* Hide default carousel arrows if old markup remains */
.carousel-control-prev, .carousel-control-next{ opacity:0; pointer-events:none; display:none; }


/* ---- Dark Header & Footer Theme ---- */
:root{
  --lt-primary:#6366f1; /* indigo */
  --lt-accent:#8b5cf6;  /* violet */
  --lt-dark:#0e1016;
  --lt-dark-2:#0f172a;
  --lt-light:#f8fafc;
}
.navbar{ background:#202020; border-bottom:1px solid rgba(255,255,255,.08); }
.navbar .nav-link{ color:#f1f5f9 !important; opacity:.95; }
.navbar .nav-link:hover{ opacity:1; }
.navbar .navbar-brand span{ color:#e5e7eb; }
.navbar .btn{ border-color: rgba(255,255,255,.2); }
.navbar .btn.btn-primary{ background:#2563eb; border-color:#2563eb; }

footer{ background:#0e1016; color:#e5e7eb; }
footer a, footer .btn{ color:#e5e7eb; }
footer .btn.btn-outline-secondary{ border-color: rgba(255,255,255,.25); }
footer .btn.btn-primary{ background:#2563eb; border-color:#2563eb; }

header#home{
  background: radial-gradient(1200px 420px at -10% -10%, rgba(99,102,241,.18), transparent),
              radial-gradient(800px 380px at 120% -10%, rgba(139,92,246,.14), transparent),
              linear-gradient(180deg, #0e1016, #0f1322 45%, #0f172a 100%);
}
header#home h1, header#home p{ color:#e5e7eb; }
header#home .btn.btn-outline-secondary{ color:#e5e7eb; border-color: rgba(255,255,255,.35); }
header#home .hero-img{ box-shadow: 0 2rem 4rem rgba(0,0,0,.35); }
header#home h1, header#home p{ color:#e5e7eb; }
header#home .btn.btn-outline-secondary{ color:#e5e7eb; border-color: rgba(255,255,255,.35); }
header#home .hero-img{ box-shadow: 0 2rem 4rem rgba(0,0,0,.35); }

.section-muted{ background:#f8fafc; }
.badge.bg-primary-subtle{ background: rgba(59,130,246,.15) !important; color:#60a5fa !important; }


/* Hero image overlay for readability */
.hero-img-wrap{ position: relative; }
.hero-img-wrap::after{
  content:"";
  position:absolute; inset:0;
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(14,16,22,.25), rgba(14,16,22,.45));
}
.hero-img{ max-height: 460px; object-fit: cover; border-radius: 1.25rem; }
@media (max-width: 575.98px){ .hero-img{ max-height: 320px; } }

.brand-tile{ background:#0e1016; transition: transform .15s ease, box-shadow .15s ease; box-shadow: 0 0 0 1px rgba(255,255,255,.06) inset; }
.brand-tile:hover{ transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.3); }

.navbar .navbar-toggler{ border-color: rgba(255,255,255,.35); }
.navbar .navbar-toggler-icon{ filter: invert(1) grayscale(1); }

footer, footer p, footer small{ color:#e5e7eb !important; }
footer .text-muted{ color:rgba(229,231,235,.8) !important; }
footer a{ color:#ffffff !important; opacity:.9; }
footer a:hover{ opacity:1; }
/* ==== Ajuste Footer para alinear columnas === */
@media (min-width: 768px) {
    footer .container > .row > div {
        display: flex;
        flex-direction: column;
        justify-content: flex-start; /* Alinea el contenido arriba */
    }

    /* Forzamos mismo alineado vertical en las tres columnas */
    footer .container > .row > div.col-md-3,
    footer .container > .row > div.col-md-6 {
        margin-top: 0 !important;
        padding-top: 0.35rem; /* mismo padding en todas */
    }
}


footer img[alt="Argentina"] {
    height: 80px;
    width: 100px;
}
/* Logos de Marcas - Uniforme y con fondo blanco */
.brand-logo {
    background-color: #ffffff;       /* Fondo blanco */
    border-radius: 8px;              /* Bordes ligeramente redondeados */
    padding: 10px;                   /* Espaciado interno */
    max-height: 80px;                /* Altura uniforme */
    width: auto;                     /* Mantener proporción */
    object-fit: contain;             /* Ajustar sin recortar */
    box-shadow: 0 0 4px rgba(0,0,0,0.1); /* Sombra suave */
}


/* ==== Brand Ticker (cinta continua) ==== */
.brand-ticker{
  --gap: 24px;
  --item-w: clamp(140px, 22vw, 220px); /* ~4 visibles en desktop */
  overflow: hidden;
  mask-image: linear-gradient(to right, transparent 0, black 6%, black 94%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0, black 6%, black 94%, transparent 100%);
  padding-block: .25rem;
}
.brand-track{
  list-style: none;
  display: flex;
  align-items: center;
  gap: var(--gap);
  padding: 0;
  margin: 0;
  width: max-content;
  animation: brand-scroll 30s linear infinite;
}
.brand-track:hover{ animation-play-state: paused; } /* pausa al pasar el mouse */

.brand-item{
  flex: 0 0 var(--item-w);
}
.brand-item .brand-logo{
  display: block;
  width: 100%;
  height: 88px;              /* altura uniforme del contenido */
  background-color: #fff;    /* fondo blanco solicitado */
  border-radius: 12px;
  padding: 10px;
  object-fit: contain;
  box-shadow: 0 0 0 1px rgba(0,0,0,.08) inset, 0 2px 10px rgba(0,0,0,.05);
}

/* Animación de desplazamiento infinito (requiere secuencia duplicada) */
@keyframes brand-scroll{
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); } /* avanza la mitad porque la lista está duplicada */
}

/* Responsivo: menos visibles en pantallas chicas */
@media (max-width: 992px){
  .brand-ticker{ --item-w: clamp(120px, 28vw, 200px); }
  .brand-item .brand-logo{ height: 80px; }
}
@media (max-width: 576px){
  .brand-ticker{ --item-w: clamp(110px, 42vw, 180px); }
  .brand-item .brand-logo{ height: 72px; }
}

/* Accesibilidad: respeta usuarios con motion reducido */
@media (prefers-reduced-motion: reduce){
  .brand-track{ animation: none; }
}
/* ---------- ¿Por qué elegirnos? ---------- */
#why h2 { letter-spacing: -0.2px; }

#why .why-list li {
  display: flex;
  gap: .6rem;
  align-items: flex-start;
  margin-bottom: .65rem;
  line-height: 1.55;
}
#why .why-list i {
  width: 1.1rem;
  margin-top: .2rem;
}

/* Grilla de 2x2, centrada y compacta */
#why .why-grid {
  --tile: 200px;         /* tamaño del cuadro (ajustá aquí) */
  display: grid;
  grid-template-columns: repeat(2, var(--tile));
  gap: 14px;
  justify-content: end;  /* alinea a la derecha de su columna */
}
@media (max-width: 992px) {
  #why .why-grid { justify-content: center; }
}
@media (max-width: 576px) {
  #why .why-grid {
    grid-template-columns: repeat(2, minmax(140px, 1fr));
    --tile: 160px;
  }
}

/* Tarjetas */
#why .why-card {
  position: relative;   /* para anclar el caption dentro */
  isolation: isolate;   /* evita solaparse con otros elementos */
  margin: 0;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
  transition: transform .18s ease, box-shadow .18s ease;
}
#why .why-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(0,0,0,.12);
}

/* Imagen cuadrada y bien recortada */
#why .ratio { border-radius: 14px; }
#why .why-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Caption oculto por defecto */
#why .why-card figcaption {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, 20px); /* empieza un poco más abajo */
  background: rgba(255,255,255,.85);
  color: #0f172a;
  font-weight: 500;
  font-size: .85rem;
  padding: .35rem .75rem;
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0,0,0,.15);
  pointer-events: none;
  white-space: nowrap;
  opacity: 0; /* invisible inicialmente */
  transition: all .25s ease;
}

/* Al pasar el mouse se muestra */
#why .why-card:hover figcaption {
  opacity: 1;
  transform: translate(-50%, 0);
  background: rgba(255,255,255,.95);
}

/* Ajuste caption en pantallas chicas */
@media (max-width: 576px) {
  #why .why-card figcaption {
    font-size: .8rem;
    padding: .3rem .6rem;
    bottom: 8px;
  }
}

@media (min-width: 992px) {
  #why .row {
    align-items: center;
  }
}
