/* ===== HERO estático empresa ===== */
/* Hero de páginas estáticas */
.hero-estatico{
    background:#0f1216;
    color:#fff;
    /* reduce altura: antes clamp(2rem,5vw,3rem) */
    padding: clamp(1.5rem, 3vw, 2rem) 0;
}

/* Forzamos el subtítulo a gris claro en vez de negro */
.hero-estatico .lead{
    color: rgba(255,255,255,.75) !important;
}

/* ===== About / tarjeta de datos ===== */
.empresa-about .tarjeta-datos{ border-radius:14px; }

/* ===== Misión · Visión · Valores ===== */
.empresa-mvv .item-mvv{
    border-radius:14px;
    transition: transform .15s ease, box-shadow .15s ease;
}
.empresa-mvv .item-mvv:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(15,23,42,.08);
}

/* ===== Mapa ===== */
.empresa-mapa iframe{ border:0; }

/* ===== CTA inferior ===== */
.empresa-cta{ background:#f8fafc; }
.empresa-cta .cta-card{ border-radius:18px; }


/* Foto en “Quiénes somos” */
.about-photo img{
    object-fit: cover; width:100%; height:100%;
    filter: saturate(95%); /* look natural */
}

.empresa-car-photo img{
    object-fit: cover;
    width:100%;
    height:100%;
    border-radius:.75rem;   /* mismo radio que la otra */
    box-shadow:0 6px 16px rgba(0,0,0,.15);
}

@media(min-width:992px){
    .empresa-about .col-lg-7 .empresa-car-photo{ min-height:280px; }
}


.hero-valores {
    background: #0f1216 url("../assets/servicios/serv_hero_1920.png") center/cover no-repeat;
    position: relative;
    min-height: 18vh;
}
.hero-valores::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.65));
}
.hero-valores .container {
    position: relative;
    z-index: 1;
}

/* MINI HERO */
.mini-hero {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
}

.mini-hero picture,
.mini-hero img {
    display: block;
    width: 100%;
    height: auto;
}

.mini-hero__overlay {
    position: absolute;   /* <-- Esto hace que el texto flote sobre la imagen */
    inset: 0;             /* ocupa todo el área del hero */
    display: flex;
    align-items: center;
    color: #fff;
    z-index: 2;           /* asegura que el texto quede por encima */
    background: linear-gradient(90deg, rgba(0,0,0,.55), rgba(0,0,0,.15) 55%, transparent);
}

.mini-hero__overlay .container {
    position: relative;
    z-index: 3;
}

.mini-hero img {
    width: 100%;
    height: 340px;           /* antes 520px → más compacto y limpio */
    object-fit: cover;
    filter: brightness(.9);
}

/* BARRA NAVEGACION ENTRE PAGINAS */
.ga-backnav {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    font-size: 1rem;
    margin-bottom: 1.2rem;
    font-weight: 500;
    color: #1f2937; /* gris oscuro */
}

.ga-backnav__link {
    position: relative;
    color: #2563eb; /* azul más oscuro, elegante */
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}

.ga-backnav__link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 2px;
    background: #2563eb; /* mismo tono del texto */
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.ga-backnav__link:hover::after {
    transform: scaleX(1);
}

.ga-backnav__link:hover {
    color: #1d4ed8; /* un tono más profundo al pasar el ratón */
}

.ga-backnav__title {
    color: #111827;
    font-weight: 600;
}

.swiper-button-prev, .swiper-button-next {
    color: #fff; /* cambia el color si el fondo es claro */
    text-shadow: 0 0 5px rgba(0,0,0,.5);
    z-index: 10;
}

/* ===== Ocultar barra de navegación solo en móvil ===== */
@media (max-width: 576px){
    .ga-backnav{
        display: none !important;
    }
}
/* Miniatura con recorte para galería */
.object-cover{object-fit:cover;width:100%;height:180px}
@media(min-width:768px){.object-cover{height:200px}}
@media(min-width:992px){.object-cover{height:220px}}


/* ===== Car detail — ESCRITORIO primero ===== */

/* Galería principal */
.car-gallery { background:#0f1216; }
.car-gallery__img{
    /* altura consistente en escritorio, sin deformar */
    height: 520px;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Controles de carrusel un poco más visibles sobre foto oscura */
.car-gallery .carousel-control-prev-icon,
.car-gallery .carousel-control-next-icon{
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.5));
}

/* Miniaturas (indicadores) */
.car-thumbs{
    gap:.5rem; padding:.5rem; margin:0; position: static;
}
.car-thumbs button{
    width:80px; height:56px; padding:0; border:0; background:transparent; opacity:.75;
}
.car-thumbs button.active{ opacity:1; outline:2px solid #0d6efd; }
.car-thumbs img{
    width:100%; height:100%; object-fit:cover; border-radius:.35rem;
    box-shadow:0 4px 12px rgba(0,0,0,.15);
}

/* Sidebar */
/*.car-sidebar{ padding-top: .5rem; }*/
.sticky-lg-top{ top: 90px; } /* espacio bajo el header fijo */
.car-price{ font-weight: 800; }
.car-meta{ color:#6b7280; } /* gris elegante */
.car-facts li+li{ margin-top:.25rem; }
.car-desc{ white-space: pre-line; }

/* ===== Responsive: ajustar alturas en pantallas más pequeñas si abres luego móvil ===== */
@media (max-width: 1399.98px){
    .car-gallery__img{ height: 460px; }
}
@media (max-width: 1199.98px){
    .car-gallery__img{ height: 420px; }
}

@media (min-width: 992px){
    /* foto principal un poco más baja */
    .ga-slide-img{ height: 420px !important; }     /* antes ~56–60vh */

    /* miniaturas un pelín más bajas */
    .ga-thumb-img{ height: 80px !important; }      /* antes 80px */
    .ga-swiper-thumbs{ margin-top: .45rem; }       /* ajusta separación */
    .ga-swiper-thumbs .swiper-slide{
        height: 80px;              /* alinea el slide al nuevo alto */
    }
}

/* pantallas muy anchas: mantenlo contenido igualmente */
@media (min-width: 1400px){
    .ga-slide-img{ height: 440px !important; }     /* contención en 2K/ultrawide */
    .ga-thumb-img{ height: 72px !important; }
}



/* ===== Formulario a la misma altura que la galería (solo escritorio) ===== */
@media (min-width: 992px){
    /* La fila ya es flex; obligamos a que estire columnas */
    .car-detail{ align-items: stretch; }

    /* Las dos columnas se comportan como contenedores flex de altura completa */
    .car-detail > .col-lg-5,
    .car-detail > .col-lg-7{
        display: flex;
        flex-direction: column;
    }

    /* Dar “unos pocos píxeles” antes del bloque de características */
    .car-detail + .card{ margin-top: .75rem; }  /* ajusta a .5rem / 1rem si prefieres */

    /* El aside (derecha) ocupa toda la altura disponible */
    .car-sidebar{
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
    }

    /* La tarjeta del formulario se estira hasta el fondo */
    .car-sidebar .card{
        flex: 1 1 auto;           /* crece para igualar la altura de la izquierda */
        display: flex;
        flex-direction: column;

    }

    .car-sidebar .card-body{
        display: flex;
        flex-direction: column;
        gap: .5rem;
        flex: 1 1 auto;           /* reparte el espacio vertical dentro de la tarjeta */
    }

    /* Que el botón quede al final si el contenido es corto */
    .car-sidebar form{ display: flex; flex-direction: column; gap: .5rem; }
    .car-sidebar form .form-text{ margin-top: auto; } /* empuja el texto/btn hacia abajo */
}

/* Botón volver solo móvil */
@media (max-width: 991.98px){
    .ga-backbtn-mob{
        border: 1px solid #e5e7eb;
        box-shadow: 0 2px 8px rgba(0,0,0,.06);
    }

    .ga-backbtn-mob{
      position: sticky;
      top: 66px;         /* ajusta según la altura de tu header fijo */
    z-index: 1020;
    }

}


/* ===== Estado (ficha) ===== */
.ga-estado-line{
    margin: .2rem 0 .6rem;   /* cerca de características y con aire antes de Equipamiento */
    line-height: 1.1;
    font-size: 1.0rem;
}
.ga-estado-line .label{
    color:#6b7280;           /* gris suave para "Estado:" */
    font-weight: 500;
}
.ga-estado{
    font-weight: 700;
    letter-spacing: .18px;
}

/* Colores por estado */
.ga-estado--stock{     color:#1f9d55 !important; }   /* Disponible Stock */
.ga-estado--import{    color:#1f9d55 !important; }   /* Disponible Import */
.ga-estado--reservado{ color:#fd7e14 !important; }   /* Reservado */
.ga-estado--vendido{   color:#dc3545 !important; }   /* Vendido */

/* Fallback por data-estado (por si alguna vista no recibe la clase) */
.ga-estado[data-estado="stock"]{     color:#1f9d55 !important; }
.ga-estado[data-estado="import"]{    color:#1f9d55 !important; }
.ga-estado[data-estado="reservado"]{ color:#fd7e14 !important; }
.ga-estado[data-estado="vendido"]{   color:#dc3545 !important; }

/* En móvil un pelín más grande para legibilidad */
@media (max-width: 576px){
    .ga-estado-line{ font-size: 0.98rem; margin: .25rem 0 .65rem; }
}


.ga-backbtn-desk {
    background-color: #f8f9fa;       /* gris claro */
    border: 1px solid #dee2e6;       /* borde suave */
    color: #212529;                  /* texto oscuro */
    font-weight: 600;
    padding: .45rem .9rem;
    border-radius: .4rem;
    box-shadow: 0 2px 4px rgba(0,0,0,.08);
    transition: all .2s ease-in-out;
}

.ga-backbtn-desk:hover {
    background-color: #e9ecef;       /* tono un poco más oscuro */
    text-decoration: none;
    box-shadow: 0 3px 6px rgba(0,0,0,.15);
}
