/* ESTRUCTURA INDUSTRIAL MASIVA - METALÚRGICAS ENYBA SL */
:root {
    --steel-dark: #121417;   /* Negro industrial */
    --steel-mid: #2A2D34;    /* Gris metálico */
    --steel-light: #F0F2F5;  /* Gris claro para contrastes */
    --safety-orange: #FF5A00; /* Naranja corporativo/seguridad */
    --white: #FFFFFF;
    --text-muted: #9BA3AF;
    --transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Montserrat', system-ui, sans-serif; background-color: var(--steel-dark); color: var(--steel-light); line-height: 1.8; overflow-x: hidden; }

/* CABECERA METÁLICA */
header { background: rgba(18, 20, 23, 0.95); backdrop-filter: blur(10px); padding: 25px 5%; display: flex; justify-content: space-between; align-items: center; position: fixed; width: 100%; top: 0; z-index: 1000; border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
.brand h1 { font-size: 2.2rem; color: var(--white); font-weight: 900; text-transform: uppercase; letter-spacing: 2px; }
.brand h1 span { color: var(--safety-orange); }
.brand p { font-size: 0.9rem; color: var(--text-muted); font-weight: 600; letter-spacing: 3px; text-transform: uppercase; }
nav { display: flex; gap: 40px; align-items: center; }
.nav-links { display: flex; gap: 30px; list-style: none; }
.nav-links a { text-decoration: none; color: var(--white); font-weight: 700; text-transform: uppercase; font-size: 0.9rem; letter-spacing: 1px; transition: var(--transition); position: relative; }
.nav-links a::after { content: ''; position: absolute; width: 0; height: 2px; bottom: -5px; left: 0; background-color: var(--safety-orange); transition: var(--transition); }
.nav-links a:hover::after { width: 100%; }
.lang-selector { padding: 10px 20px; background: transparent; border: 1px solid var(--safety-orange); color: var(--safety-orange); font-weight: 800; text-transform: uppercase; cursor: pointer; transition: var(--transition); }
.lang-selector:hover { background: var(--safety-orange); color: var(--white); }

/* HERO CON VÍDEO DE FONDO (PREPARADO PARA MP4) */
.hero { position: relative; min-height: 100vh; display: flex; align-items: center; padding: 0 5%; overflow: hidden; }
.hero-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; filter: brightness(30%) grayscale(50%); }
.hero-content { position: relative; z-index: 2; max-width: 900px; margin-top: 80px; }
.hero-content h2 { font-size: 5rem; line-height: 1; font-weight: 900; margin-bottom: 30px; text-transform: uppercase; }
.hero-content p { font-size: 1.4rem; color: #D1D5DB; border-left: 4px solid var(--safety-orange); padding-left: 20px; max-width: 700px; }

/* BLOQUES DE CONTENIDO DENSOS */
.content-block { padding: 120px 5%; max-width: 1600px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.content-block.full { grid-template-columns: 1fr; max-width: 1200px; }
.content-block h2 { font-size: 3rem; font-weight: 900; margin-bottom: 40px; text-transform: uppercase; color: var(--white); display: flex; align-items: center; gap: 20px; }
.content-block h2::before { content: ''; display: block; width: 50px; height: 4px; background: var(--safety-orange); }
.content-block p { font-size: 1.15rem; color: var(--text-muted); margin-bottom: 30px; text-align: justify; }
.stat-box { background: var(--steel-mid); padding: 50px; border-left: 4px solid var(--safety-orange); }

/* CATÁLOGO INQUEBRANTABLE (SOLO TÍTULOS E IMÁGENES LOCALES) */
.services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); gap: 30px; width: 100%; margin-top: 60px; }
.service-card { position: relative; height: 500px; overflow: hidden; display: flex; align-items: flex-end; padding: 40px; background: var(--steel-dark); }
.service-card img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; transition: transform 0.8s ease; filter: brightness(50%) contrast(120%); }
.service-card:hover img { transform: scale(1.1); filter: brightness(30%); }
.service-card .overlay { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(18,20,23,1) 0%, rgba(18,20,23,0) 60%); z-index: 2; pointer-events: none; }
.service-card h3 { position: relative; z-index: 3; color: var(--white); font-size: 1.8rem; font-weight: 900; text-transform: uppercase; width: 100%; border-bottom: 2px solid var(--safety-orange); padding-bottom: 15px; }

/* TESTIMONIOS (REGLA: 100% ANÓNIMOS) */
.testimonial-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); gap: 40px; }
.testimonial-card { background: var(--steel-mid); padding: 60px 50px; position: relative; }
.testimonial-card p { font-size: 1.3rem; font-style: italic; color: var(--white); position: relative; z-index: 1; margin: 0; }
.testimonial-card::after { content: ''; position: absolute; top: 0; right: 0; width: 40px; height: 40px; background: var(--safety-orange); clip-path: polygon(100% 0, 0 0, 100% 100%); }

/* FAQ (REGLA: EXACTAMENTE 2, H3 + P) */
.faq-container { background: var(--steel-mid); padding: 80px; border-top: 4px solid var(--safety-orange); }
.faq-item { margin-bottom: 60px; }
.faq-item:last-child { margin-bottom: 0; }
.faq-item h3 { color: var(--white); font-size: 2rem; margin-bottom: 25px; text-transform: uppercase; font-weight: 800; }
.faq-item p { font-size: 1.2rem; color: var(--text-muted); }

/* FOOTER UNIFICADO GLOBAL */
footer { background: #0A0B0D; padding: 120px 5% 50px; margin-top: 100px; border-top: 1px solid #1F2229; }
.footer-columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 60px; max-width: 1600px; margin: 0 auto 80px; }
.footer-columns h4 { color: var(--safety-orange); font-size: 1.4rem; font-weight: 900; text-transform: uppercase; margin-bottom: 30px; letter-spacing: 1px; }
.footer-columns p { color: var(--text-muted); font-size: 1.1rem; margin-bottom: 15px; }
.footer-menu-links { list-style: none; }
.footer-menu-links li { margin-bottom: 15px; }
.footer-menu-links a { color: var(--text-muted); text-decoration: none; font-size: 1.1rem; transition: var(--transition); text-transform: uppercase; font-weight: 600; }
.footer-menu-links a:hover { color: var(--white); padding-left: 10px; border-left: 2px solid var(--safety-orange); }

/* LOGO KIT DIGITAL - REGLA DE ORO */
.logo-kit-centered { height: 125px !important; background-color: transparent !important; display: block; margin: 0 auto 50px; }
.footer-legal-text { text-align: center; color: #4A5568; font-size: 1rem; border-top: 1px solid #1F2229; padding-top: 40px; }