body{
font-family: Arial;
margin:0;
background:#f5f5f5;
color:#333;
}

/* CONTENEDOR */

.container{
width:90%;
max-width:1200px;
margin:auto;
}

/* HEADER */

header{
background:white;
padding:12px 0;
border-bottom:1px solid #eee;
box-shadow:0 2px 6px rgba(0,0,0,0.05);
position:sticky;
top:0;
z-index:1000;
}

.nav{
display:flex;
align-items:center;
justify-content:space-between;
}

/* LOGO */

.logo img{
height:120px;
}

/* MENU */

nav{
display:flex;
align-items:center;
}

nav a{
color:#1e3a5f;
margin-left:25px;
text-decoration:none;
font-weight:500;
font-size:16px;
}

nav a:hover{
color:#5ca620;
}

/* HERO */

.hero{
background:linear-gradient(135deg,#1e3a5f,#2c6ed5);
color:white;
padding:120px 0;
}

.hero-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:center;
}

.hero-text h1{
margin-top:0;
}

.hero-img img{
width:100%;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.15);
}

/* BOTONES */

.btn{
background:#5ca620;
padding:14px 28px;
color:white;
text-decoration:none;
border-radius:6px;
display:inline-block;
margin-top:15px;
font-weight:500;
}

.btn:hover{
background:#4a8c19;
}

/* FEATURES */

.features{
padding:80px 0;
text-align:center;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:25px;
margin-top:40px;
}

.card{
background:white;
padding:25px;
border-radius:8px;
box-shadow:0 4px 10px rgba(0,0,0,0.05);
}

.card h3{
margin-top:0;
}

/* SECCIONES CON IMAGEN */

.uso{
padding:80px 0;
background:white;
}

.grid-uso{
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

.uso-img img{
width:100%;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

.uso-text h2{
margin-top:0;
}

/* CAPTURAS SOFTWARE */

.software-preview{
padding:80px 0;
background:#f8f8f8;
text-align:center;
}

.center{
text-align:center;
margin-bottom:30px;
}

.grid-screens{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:25px;
margin:40px 0;
}

.grid-screens img{
width:100%;
border-radius:8px;
box-shadow:0 6px 18px rgba(0,0,0,0.08);
transition:0.3s;
}

.grid-screens img:hover{
transform:scale(1.03);
}

/* PAGE */

.page{
padding:80px 0;
}

/* CTA */

.cta{
background:#1e3a5f;
color:white;
text-align:center;
padding:80px 0;
}

/* FOOTER */

footer{
background:#111;
color:white;
text-align:center;
padding:25px;
}

/* FORMULARIOS */

input, textarea{
width:100%;
padding:12px;
margin-bottom:15px;
border:1px solid #ddd;
border-radius:4px;
}

button{
border:none;
cursor:pointer;
}

.lightbox{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.8);
align-items:center;
justify-content:center;
z-index:2000;
}

.lightbox img{
max-width:90%;
max-height:90%;
border-radius:6px;
box-shadow:0 10px 30px rgba(0,0,0,0.4);
cursor:pointer;
}

.grid-screens img{
cursor:pointer;
}
/* TIMELINE */

.timeline{
padding:80px 0;
background:#f8f8f8;
text-align:center;
}

.timeline-wrapper{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:30px;
margin-top:40px;
}

.timeline-item{
background:white;
padding:25px;
border-radius:8px;
box-shadow:0 4px 10px rgba(0,0,0,0.05);
}

.timeline-year{
font-size:26px;
font-weight:bold;
color:#2c6ed5;
margin-bottom:10px;
}
/* FOOTER NUEVO */

.footer-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:40px;
padding:40px 0;
}

.footer-col h3{
margin-top:0;
color:white;
}

.footer-col a{
color:#ccc;
text-decoration:none;
}

.footer-col a:hover{
color:#5ca620;
}

.footer-bottom{
border-top:1px solid rgba(255,255,255,0.1);
padding-top:20px;
margin-top:20px;
}
/* MENU MOVIL */

.menu-toggle{
display:none;
font-size:28px;
cursor:pointer;
color:#1e3a5f;
}

@media (max-width:900px){

.nav{
flex-wrap:wrap;
}

.menu-toggle{
display:block;
}

nav{
display:none;
width:100%;
flex-direction:column;
margin-top:15px;
}

nav a{
margin:10px 0;
margin-left:0;
}

nav.show{
display:flex;
}

}
/* MODAL CONTACTO */

.modal{

position:fixed;
top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.6);

display:flex;
align-items:center;
justify-content:center;

z-index:3000;

}

.modal-content{

background:white;

padding:40px;

border-radius:8px;

max-width:400px;
text-align:center;

box-shadow:0 10px 30px rgba(0,0,0,0.2);

}

.modal-content h2{
margin-top:0;
}

.modal-content button{
margin-top:20px;
}
