
:root {
  --negro: #1a1a1a;
  --gris: #555;
  --dorado: #f4b400;
  --blanco: #ffffff;
}




/* ==========================
ESTILOS GENERALES
========================== */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Montserrat', sans-serif;
}

body, html {
width: 100%;
height: 100%;
}

/* ==========================
SPLASH / INTRO
========================== */
#splash {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, #222 0%, #000 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    z-index: 1000;
}

.splash-content h1 {
    font-size: 60px;
    letter-spacing: 5px;
    color: var(--dorado);
    margin-bottom: 5px;
    font-weight: 700;
}

.splash-content p {
    font-size: 18px;
    opacity: 0.8;
    margin-bottom: 30px;
}

.splash-content button {
    padding: 12px 40px;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    background: var(--dorado);
    border: none;
    cursor: pointer;
    border-radius: 4px;
    transition: 0.3s;
    color: #1a1a1a;
}

.splash-content button:hover {
    transform: scale(1.05);
    box-shadow: 0 0 20px rgba(244, 180, 0, 0.5);
}


/* ==========================
APP
========================== */
#app {
display: none; /* Inicio oculto */
height: 100vh;
flex-direction: row;
}

#app.visible {
display: flex;
}

/* ==========================
MENÚ LATERAL
========================== */
.sidebar {
    width: 280px;
    background: var(--negro);
    color: #fff;
    display: flex;
    flex-direction: column;
    padding: 30px 20px;
    box-shadow: 4px 0 10px rgba(0,0,0,0.3);
}

.sidebar .logo h2 { 
    color: var(--dorado); 
    font-size: 26px; 
    margin-bottom: 5px;
}

.sidebar .logo span { 
    font-size: 11px; 
    text-transform: uppercase; 
    opacity: 0.7; 
    letter-spacing: 1px;
}

.sidebar nav ul { 
    list-style: none; 
    margin-top: 50px; 
}

.sidebar nav ul li {
    padding: 15px 15px;
    margin-bottom: 8px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 600;
    font-size: 14px;
    border-left: 0px solid var(--dorado);
}

/* El efecto interactivo */
.sidebar nav ul li:hover, 
.sidebar nav ul li.active {
    background: rgba(244, 180, 0, 0.15); /* Fondo suave dorado */
    color: var(--dorado);
    border-left: 5px solid var(--dorado);
    padding-left: 20px; /* Se desplaza un poco al activar */
}

/* ==========================
CONTENIDO
========================== */
.content {
flex: 1;
background: #fafafa;
padding: 40px;
overflow-y: auto;
}

.section {
display: none;
}

.section.active {
display: block;
animation: fadeIn 0.3s ease-in;
}


@keyframes fadeIn {
from {
  opacity: 0;
  transform: translateY(10px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}

.section h1 {
margin-bottom: 15px;
color: #1a1a1a;
}

.section h3 {
margin-bottom: 15px;
color: #555;
}

.section p {
color: #333;
line-height: 1.6;
}




/* ==========================
   BOTÓN DOSSIER (Estilo para tu contenido)
   ========================== */
.btn-dossier {
    display: inline-flex;
    align-items: center;
    background: var(--negro);
    color: var(--dorado);
    padding: 12px 20px;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 700;
    margin: 20px 0;
    border: 2px solid var(--dorado);
    transition: 0.3s;
    font-size: 14px;
}


/* ==========================
LOGOS
========================== */
.logo-main {
    display: flex;
    justify-content: center; /* Centra horizontalmente */
    align-items: center;     /* Centra verticalmente */
    width: 100%;             /* Ocupa todo el ancho para poder centrar */
    margin: 30px 0;          /* Espacio arriba y abajo */
}

.logo-main img {
    width: 180px;             /* 👈 Tamaño reducido al 40% del original (60% menos) */
    height: auto;            /* Mantiene la proporción */
    display: block;

}

.marcas {
  display: flex;
  justify-content: center;   /* 👈 CENTRA LOS LOGOS */
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
  margin-top: 40px;
}


.marca-logo {
max-width: 120px;
height: auto;
}

.proyectos {
  display: flex;
  justify-content: center;   /* CENTRA horizontalmente */
  gap: 25px;                 /* más aire entre imágenes */
  margin-top: 30px;
}

.proyecto-img {
max-width: 200px;
height: auto;
border: 1px solid #ccc;
border-radius: 5px;
}
.experiencia-lista {
margin-top: 15px;
margin-left: 20px;
color: var(--gris);
}

.experiencia-lista li {
margin-bottom: 8px;
}
.especialidades {
  margin-top: 20px;
  padding-left: 0;
  list-style: none;
}

.especialidades li {
  margin-bottom: 15px;
  padding-left: 18px;
  position: relative;
  color: #333;
  line-height: 1.6;
}

.especialidades li::before {
  content: "▪";
  position: absolute;
  left: 0;
  color: var(--dorado);
  font-size: 18px;
  top: 0;
}

.especialidades strong {
  color: var(--negro);
  font-weight: 600;
}
.experiencia-box {
  margin-top: 30px;
  background: #ffffff;
  padding: 25px;
  border-radius: 8px;
  box-shadow: 0 6px 15px rgba(0,0,0,0.05);
}

.experiencia-box h2 {
  margin-bottom: 20px;
  font-weight: 600;
  color: var(--negro);
  border-left: 4px solid var(--dorado);
  padding-left: 12px;
}

.experiencia-table {
  width: 100%;
  border-collapse: collapse;
}

.experiencia-table thead {
  background: #f4f6f8;
}

.experiencia-table th {
  text-align: left;
  padding: 14px;
  font-weight: 600;
  color: #1a1a1a;
  font-size: 14px;
}

.experiencia-table td {
  padding: 14px;
  border-top: 1px solid #e6e6e6;
  vertical-align: top;
  font-size: 14px;
  line-height: 1.6;
}

.experiencia-table tbody tr:hover {
  background: #fafafa;
}
.experiencia-box {
  margin-top: 30px;
  background: #ffffff;
  padding: 35px 40px; /* más aire lateral */
  border-radius: 8px;
  box-shadow: 0 6px 15px rgba(0,0,0,0.05);
}

/* SUBTÍTULOS */
.experiencia-box h2 {
  margin-top: 45px;        /* separación clara con el bloque anterior */
  margin-bottom: 14px;
  font-weight: 600;
  color: var(--negro);
  border-left: 4px solid var(--dorado);
  padding-left: 14px;
}

/* TEXTO DESCRIPTIVO */
.experiencia-box p {
  margin-left: 18px;       /* primera tabulación */
  margin-bottom: 12px;
  color: #333;
  line-height: 1.7;
}

/* LISTAS */
.experiencia-list {
  margin-left: 40px;       /* segunda tabulación (más profunda) */
  margin-bottom: 15px;
}

/* ÍTEMS */
.experiencia-list li {
  margin-bottom: 10px;
  line-height: 1.65;
}


/* ===== BLOQUES DE repuestos ===== */
.bloque-repuestos{
  max-width: 900px;
}

/* TÍTULO CON RAYITA AMARILLA */
.titulo-linea,
.subtitulo-linea {
  position: relative;
  padding-left: 18px;
  margin-top: 35px;
  margin-bottom: 15px;
}

.titulo-linea::before,
.subtitulo-linea::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 4px;
  height: 70%;
  background: var(--dorado);
}

.titulo-linea {
  font-size: 22px;
  font-weight: 700;
  color: var(--negro);
}

.subtitulo-linea {
  font-size: 18px;
  font-weight: 600;
  color: var(--negro);
}

/* TEXTO */
.texto-base {
  color: #333;
  line-height: 1.7;
  margin-bottom: 15px;
}

.texto-indentado {
  margin-left: 18px;
}

/* LISTAS TÉCNICAS */
.lista-tecnica {
  margin-left: 40px;
  margin-bottom: 25px;
}

.lista-tecnica li {
  margin-bottom: 12px;
  line-height: 1.6;
}
