/* css/style.css - VERSIÓN FINAL CORREGIDA */

/* ======== VARIABLES Y ESTILOS GENERALES ======== */
:root {
    --bg-dark: #0d1117;
    --bg-light-alt: #161b22;
    --primary-color: #ff5500;
    --secondary-color: #0077b6;
    --text-light: #e6edf3;
    --text-muted: #b0b8c4;
    --border-color: rgba(255, 255, 255, 0.1);
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: var(--bg-dark);
    color: var(--text-light);
    line-height: 1.7;
}

h1, h2, h3, h4, h5, h6 { font-weight: 700; color: var(--text-light); }
.text-muted { color: var(--text-muted) !important; }
.lead { color: var(--text-muted); font-weight: 400; }

/* ======== TÍTULOS DE SECCIÓN MODERNIZADOS ======== */
.section-title {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 30px !important;
    font-size: 2.5rem;
}
.section-title::after {
    content: ''; position: absolute; bottom: 0; left: 50%;
    transform: translateX(-50%); width: 80px; height: 4px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    border-radius: 2px;
}

/* ======== FONDOS INTERCALADOS POR SECCIÓN ======== */
section { padding: 100px 0; position: relative; overflow: hidden; }
#inicio { background: linear-gradient(to top, rgba(13, 17, 23, 1) 0%, rgba(13, 17, 23, 0.7) 50%), url('https://images.unsplash.com/photo-1557804506-669a67965ba0?w=1080') no-repeat center center; background-size: cover; }
#servicios { background-color: var(--bg-light-alt); }
#porque-elegirnos { background-image: radial-gradient(ellipse at 10% 90%, rgba(255, 85, 0, 0.1), var(--bg-dark) 50%); }
#caracteristicas { background-color: var(--bg-light-alt); }
#contacto { background-image: radial-gradient(ellipse at 90% 10%, rgba(0, 119, 182, 0.1), var(--bg-dark) 50%); }

/* ======== HERO SECTION ======== */
.hero-section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 100px;
    padding-bottom: 40px;
}
.hero-section h1 { color: #fff; font-size: calc(1.8rem + 2.5vw); }

/* ======== NAVBAR CON LOGO CENTRADO Y GRANDE (CORREGIDO) ======== */
.navbar {
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: rgba(13, 17, 23, 0.85);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--border-color);
}
.logo-img {
    height: 60px;
    width: auto;
}
.navbar-collapse {
    flex-grow: 1;
}
.navbar-nav-centered {
    display: flex;
    align-items: center;
    margin: 0 auto;
}
.navbar .nav-link {
    color: var(--text-muted);
    font-weight: 500;
    transition: color 0.3s ease;
    padding: 0.5rem 1rem;
}
.navbar .nav-link:hover, .navbar .nav-link.active { color: var(--primary-color); }

@media (max-width: 991.98px) {
    .navbar-nav-centered {
        flex-direction: column;
        align-items: center;
        width: 100%;
        margin: 0;
    }
    .navbar-nav {
        width: 100%;
        text-align: center;
    }
    .dropdown {
        margin-top: 1rem;
        margin-left: 0 !important;
        align-self: center;
    }
}

/* ======== BOTONES ======== */
.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);font-weight:600;padding:12px 30px;border-radius:50px;transition:all .3s ease;box-shadow:0 4px 15px rgba(255,85,0,.2)}.btn-primary:hover,.btn-primary:focus{background-color:#e64d00;border-color:#cc4400;transform:translateY(-3px);box-shadow:0 8px 20px rgba(255,85,0,.4)}.btn-outline-primary{color:var(--primary-color);border-color:var(--primary-color)}.btn-outline-primary:hover{background-color:var(--primary-color);color:var(--text-light)}

/* ======== BLOQUES DE SERVICIOS (ORGANIZACIÓN Y CONTRASTE CORREGIDOS) ======== */
.service-card {
    background-color: var(--bg-dark);
    border: 1px solid var(--border-color);
    border-radius: 15px;
    padding: 30px;
    height: 100%;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}
.service-card:hover { transform: translateY(-10px); box-shadow: 0 10px 30px rgba(0,0,0,0.5); border-color: var(--primary-color); }
.service-card .service-header {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}
.service-card .icon-circle {
    flex-shrink: 0;
    margin-right: 20px;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
}
.service-card .card-title {
    margin-bottom: 0;
    font-size: 1.5rem;
    color: var(--text-light);
}
.service-card ul { list-style: none; padding-left: 0; margin-bottom: 0; }
.service-card ul li { margin-bottom: 1rem; }
.service-card ul strong {
    color: var(--text-light);
    font-size: 1.1rem;
    display: block;
    margin-bottom: 0.25rem;
}
.service-card ul .small {
    color: var(--text-muted);
    font-size: 0.9rem;
}

/* ======== BLOQUES DE CARACTERÍSTICAS (ESPACIADO CORREGIDO) ======== */
.feature-box {
    background-color: var(--bg-dark);
    border: 1px solid var(--border-color);
    border-radius: 15px;
    padding: 30px 20px;
    text-align: center;
    height: 100%;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.feature-box:hover { transform: translateY(-5px); border-color: var(--primary-color); background-color: rgba(255, 85, 0, 0.1); }
.feature-box i { font-size: 2.5rem; color: var(--primary-color); margin-bottom: 20px; display: block; }
.feature-box h5 { font-size: 1.1rem; margin-bottom: 10px; min-height: 44px; display: flex; align-items: center; justify-content: center; }
.feature-box p { font-size: 0.9rem; color: var(--text-muted); }

/* ======== ACORDEÓN ======== */
#porque-elegirnos .accordion-item{background-color:var(--bg-light-alt);border:1px solid var(--border-color);border-radius:15px;margin-bottom:1rem}
#porque-elegirnos .accordion-button{background-color:transparent;color:var(--text-light);font-weight:600}
#porque-elegirnos .accordion-button:not(.collapsed){background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:none;border-radius:15px}
#porque-elegirnos .accordion-body{color:var(--text-muted);padding:20px;background-color:var(--bg-dark);border-radius:0 0 15px 15px}

/* ======== NUEVA SECCIÓN CONTACTO ======== */
.contact-email-link {
    display: inline-block;
    padding: 15px 30px;
    border: 2px solid var(--primary-color);
    border-radius: 50px;
    color: var(--text-light);
    font-size: 1.5rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}
.contact-email-link:hover {
    background-color: var(--primary-color);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(255, 85, 0, 0.4);
}

/* ======== FOOTER ======== */
footer{background-color:#0d1117;border-top:1px solid var(--border-color)}footer a{display:inline-block;transition:all .3s ease}footer .fab:hover{color:var(--primary-color)!important;transform:translateY(-2px)}.footer-legal-links a{color:var(--text-muted);text-decoration:none;font-size:.9rem}.footer-legal-links a:hover{color:var(--primary-color)!important;text-decoration:underline}

/* ======== BARRA DE COOKIES Y PÁGINAS LEGALES ======== */
.cookie-banner{position:fixed;bottom:0;left:0;width:100%;background-color:rgba(13,17,23,.9);padding:15px;z-index:1050;border-top:1px solid var(--border-color);backdrop-filter:blur(5px)}.legal-page{padding-top:150px;padding-bottom:100px;min-height:100vh}

/* ======== ANIMACIONES ======== */
[data-animation]{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out}[data-animation].is-visible{opacity:1;transform:none}