:root {
    --primary-color: #0d0d0d; /* Negro profundo para el fondo */
    --secondary-color: #1a1a1a; /* Un negro un poco más claro para secciones */
    --text-color: #f0f0f0; /* Blanco o gris muy claro para el texto principal */
    --accent-color: #ffc107; /* Dorado para acentos, botones y títulos */
    --accent-dark-color: #e3a800; /* Un dorado un poco más oscuro para el hover */
}

/* Solución para el navbar fijo: añade un padding a todo el documento */
html {
    scroll-padding-top: 100px;
}

body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    color: var(--text-color);
    background-color: var(--primary-color);
}

h1, h2, h3, h4 {
    font-weight: 700;
    color: var(--accent-color);
}

.bg-light { 
    background-color: var(--secondary-color) !important; 
    color: var(--text-color);
}

.bg-dark { background-color: var(--primary-color) !important; }

/* Estilos para el navbar */
.navbar-brand .d-flex {
    color: var(--text-color);
}

.navbar-nav .nav-link {
    color: var(--text-color) !important;
    transition: color 0.3s ease;
}

.navbar-nav .nav-link:hover {
    color: var(--accent-color) !important;
}



/* Estilos para los íconos del WhatsApp flotante */
.whatsapp-float {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
    transition: transform 0.3s ease;
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.4));
}

.whatsapp-float:hover {
    transform: scale(1.1);
}

.whatsapp-float img {
    border-radius: 50%;
    border: 2px solid var(--accent-color);
}

/* Estilos específicos para secciones */
#hero, #servicios, #portafolio, #contacto, #footer {
    padding-top: 50px; /* Espacio para que el navbar no tape el contenido */
    padding-bottom: 50px;
}

#hero {
    background-color: var(--primary-color);
    min-height: 80vh;
}

/* Estilos para las tarjetas del portafolio */
.card-portfolio {
    background-color: var(--secondary-color);
    border: 1px solid var(--accent-dark-color);
    color: var(--text-color);
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.card-portfolio:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}

/* Ajuste para el desplazamiento del navbar sticky */
section[id] {
    scroll-margin-top: 100px; 
}