﻿/*header*/
/*.header {
    position: fixed !important;
    top: 0 !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1050;*/ /* por encima del contenido */

/*}*/

.header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 50 !important;
    padding-top: .5rem !important;
    background-color: transparent !important;
}

/*.header-height {
    height: 64px;
}*/

.nav-link-custom {
    color: #475569;
    font-weight: 500;
    text-decoration: none;
    transition: color .2s ease;
}

    .nav-link-custom:hover {
        color: #059669;
    }

.cta-desktop {
    background: #059669;
    color: white;
    padding: .5rem 1.5rem;
    border-radius: .6rem;
    border: none;
    font-weight: 600;
    transition: all .3s ease;
    box-shadow: 0 6px 16px rgba(16,185,129,.4);
}

    .cta-desktop:hover {
        background: #047857;
        transform: translateY(-2px);
        box-shadow: 0 10px 22px rgba(16,185,129,.5);
    }

.btn-menu {
    background: transparent;
    border: none;
    color: #475569;
    padding: .25rem;
}

    .btn-menu:hover {
        color: #059669;
    }

/* Mobile menu */
.mobile-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #ffffff;
    border: 1px solid rgba(226,232,240,.6);
    border-radius: .8rem;
    padding: 1rem;
    margin-top: .5rem;
    box-shadow: 0 15px 30px rgba(0,0,0,.08);
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
    transition: all .3s ease;
    z-index: 3000;
    display: block; /* 👈 quitamos el display:none */
}

    /* Estado activo */
    .mobile-menu.active {
        max-height: 500px; /* suficiente para el contenido */
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }


.mobile-link {
    display: block;
    padding: .5rem 0;
    color: #475569;
    font-weight: 500;
    text-decoration: none;
    transition: color .2s ease;
}

    .mobile-link:hover {
        color: #059669;
    }

.cta-mobile {
    background: #059669;
    color: white;
    padding: .5rem 1.5rem;
    border-radius: .6rem;
    border: none;
    font-weight: 600;
    margin-top: .5rem;
    box-shadow: 0 6px 16px rgba(16,185,129,.4);
    transition: all .3s ease;
}

    .cta-mobile:hover {
        background: #047857;
        box-shadow: 0 10px 22px rgba(16,185,129,.5);
    }

.lucide-icon {
    width: 20px;
    height: 20px;
    stroke-width: 2.2px;
}

.container-header {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    width: 100%;
    max-width: 1350px;
    padding-left: calc(var(--bs-gutter-x) * 1); /* margen grande en desktop */
    padding-right: calc(var(--bs-gutter-x) * 1);
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}

/* Reducir márgenes a partir de 990px */
@media (max-width: 990px) {
    .container-header {
        padding-left: calc(var(--bs-gutter-x) * 0.5); /* menos margen */
        padding-right: calc(var(--bs-gutter-x) * 0.5);
    }
}

/* Opcional: mobile aún más reducido */
@media (max-width: 770px) {
    .container-header {
        padding-left: calc(var(--bs-gutter-x) * 0.25);
        padding-right: calc(var(--bs-gutter-x) * 0.25);
    }
}
