:root{--primary:#2c3e50;--secondary:#2bc032;--accent:#3498db;--light:#ecf0f1;--dark:#2c3e50;--soft:#f6f8f9}
html{scroll-behavior:smooth}body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;color:#333;padding-top:80px;background:#f8f9fa}
.navbar{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.1);padding:15px 0}.nav-link{color:var(--dark);font-weight:500;margin:0 7px}.nav-link:hover{color:var(--secondary)}
.btn-primary{background:var(--secondary);border-color:var(--secondary);padding:10px 25px;font-weight:600;border-radius:30px;transition:.3s}.btn-primary:hover{background:#219627;border-color:#219627;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}
.section{padding:95px 0}.section-kicker{display:block;color:#3498db;font-size:.76rem;font-weight:700;letter-spacing:.15em;margin-bottom:18px}
h1,h2,h3{color:var(--primary);font-weight:700}h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.08}.section-heading{max-width:760px}.section-heading>p{font-size:1.1rem;color:#65717d}
.hero{margin-top:-80px;padding-top:80px;color:#fff;background:linear-gradient(rgba(20,36,50,.88),rgba(20,36,50,.9)),url('https://images.unsplash.com/photo-1460925895917-afdab827c52f?auto=format&fit=crop&w=1715&q=80') center/cover}.min-vh-75{min-height:78vh}.hero h1{color:#fff;font-size:clamp(3rem,6vw,5.8rem);line-height:.98;letter-spacing:-.045em}.hero h1 span{color:var(--secondary)}.hero-lead{font-size:1.35rem;max-width:760px;margin-top:30px}.hero-sub{color:#d5dde3;max-width:720px}.btn-outline-light{border-radius:30px;padding:10px 25px;font-weight:600}
.body-copy{color:#66717b}.body-copy p{font-size:1.05rem}.manifesto{border-left:5px solid var(--secondary);padding:25px 30px;background:var(--soft);font-size:clamp(1.35rem,2.5vw,2rem);font-weight:600;color:var(--primary)}
.soft-section{background:var(--soft)}.solution-card{background:#fff;padding:45px;border-radius:18px;box-shadow:0 10px 35px rgba(44,62,80,.08);border-top:5px solid var(--secondary);transition:.3s}.solution-card:hover{transform:translateY(-6px)}.event-solution{border-top-color:#3498db}.solution-icon{font-size:2.4rem;color:var(--secondary);margin-bottom:25px}.event-solution .solution-icon,.event-solution .card-label{color:#3498db}.card-label{color:var(--secondary);font-size:.72rem;letter-spacing:.14em;font-weight:700}.solution-card h3{font-size:2.1rem;margin:14px 0}.solution-card>p:not(.lead){color:#3498db}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.tags span{border:1px solid #dde3e7;border-radius:30px;padding:7px 12px;font-size:.8rem;color:#5e6973}.solution-link{color:var(--primary);font-weight:700;text-decoration:none}.solution-link i{color:var(--secondary);margin-left:8px}
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:2px solid #e3e7ea}.process-grid article{padding:35px 22px;border-right:1px solid #e3e7ea}.process-grid article:last-child{border:0}.process-grid span{color:var(--secondary);font-weight:700}.process-grid h3{font-size:1.3rem;margin:15px 0}.process-grid p{font-size:.9rem;color:#69747e}
.projects-section{background:var(--primary)}.projects-section .section-heading p{color:#ccd5dc}.project-card{height:100%;min-height:310px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:38px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;transition:.3s}.project-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.1)}.project-card>span{color:var(--secondary);font-size:.7rem;font-weight:700;letter-spacing:.14em}.project-card h3{color:#fff;font-size:2rem}.project-card .question{color:#c9d2d9;margin:15px 0 8px}.project-card>p:last-child{color:#d9e0e5}.project-card.featured{min-height:400px;background:linear-gradient(120deg,rgba(43,192,50,.12),rgba(255,255,255,.06))}
.idea-box{background:var(--soft);border-radius:20px;padding:65px;border-left:6px solid var(--secondary)}.idea-box p{max-width:800px;color:#63707a;font-size:1.05rem}.idea-box strong{display:block;font-size:1.4rem;color:var(--primary);margin-top:25px}
.tech-grid article{background:#fff;height:100%;padding:28px;border-radius:12px;border:1px solid #e5eaed}.tech-grid i{color:var(--secondary);font-size:1.8rem;margin-bottom:18px}.tech-grid h3{font-size:1.15rem}.tech-grid p{font-size:.88rem;color:#68737d}
.contact-section{background:#fff}.contact-section .lead{color:#66717b}.contact-phrase{border-left:4px solid var(--secondary);padding:18px 22px;margin-top:35px;color:var(--primary);font-weight:600}.contact-form{background:var(--soft);padding:40px;border-radius:18px}.contact-form label{display:block;font-weight:600;margin-bottom:22px}.contact-form .form-control,.contact-form .form-select{margin-top:9px;border:1px solid #dce3e7;border-radius:10px;padding:13px;background:#fff}.contact-form small{display:block;color:#78838d;margin-top:12px;text-align:center}
footer{background:var(--primary);color:#fff;padding:60px 0 25px}footer .footer-logo{background:#fff;padding:8px;border-radius:8px}footer h4{font-size:1rem;color:#fff}footer a,footer p{display:block;color:#c9d3da;text-decoration:none;margin:8px 0}footer a:hover{color:var(--secondary)}footer hr{border-color:rgba(255,255,255,.2);margin:40px 0 25px}
.floating-whatsapp{position:fixed;right:25px;bottom:25px;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-size:1.8rem;box-shadow:0 5px 18px rgba(0,0,0,.25);z-index:1000;text-decoration:none}.floating-whatsapp:hover{color:#fff;transform:scale(1.06)}
@media(max-width:991px){.process-grid{grid-template-columns:1fr 1fr}.process-grid article{border-bottom:1px solid #e3e7ea}.hero h1{font-size:3.8rem}}
@media(max-width:575px){body{padding-top:72px}.section{padding:70px 0}.hero{margin-top:-72px;padding-top:72px}.hero h1{font-size:3rem}.hero-lead{font-size:1.12rem}.solution-card,.contact-form{padding:28px}.idea-box{padding:38px 28px}.process-grid{grid-template-columns:1fr}.process-grid article{border-right:0}.manifesto{padding:22px}.project-card{min-height:280px}}

.card-1 {
  /* Reemplaza la URL por la ruta de tu imagen */
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../imagen/2.png');
  background-size: cover;       /* Hace que la imagen cubra todo el espacio */
  background-position: center;  /* Centra la imagen */
  background-repeat: no-repeat; /* Evita que la imagen se duplique */
  color: #ffffff;               /* Asegura que el texto sea blanco para que sea legible */
}

.card-2 {
  /* Reemplaza la URL por la ruta de tu imagen */
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../imagen/5.png');
  background-size: cover;       /* Hace que la imagen cubra todo el espacio */
  background-position: center;  /* Centra la imagen */
  background-repeat: no-repeat; /* Evita que la imagen se duplique */
  color: #ffffff;               /* Asegura que el texto sea blanco para que sea legible */
}

.card-3 {
  /* Reemplaza la URL por la ruta de tu imagen */
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../imagen/votacion1.jpg');
  background-size: cover;       /* Hace que la imagen cubra todo el espacio */
  background-position: center;  /* Centra la imagen */
  background-repeat: no-repeat; /* Evita que la imagen se duplique */
  color: #ffffff;               /* Asegura que el texto sea blanco para que sea legible */
}

.card-4 {
  /* Reemplaza la URL por la ruta de tu imagen */
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../imagen/espejo1.jpg');
  background-size: cover;       /* Hace que la imagen cubra todo el espacio */
  background-position: center;  /* Centra la imagen */
  background-repeat: no-repeat; /* Evita que la imagen se duplique */
  color: #ffffff;               /* Asegura que el texto sea blanco para que sea legible */
}

.card-0 {
  /* Reemplaza la URL por la ruta de tu imagen */
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../imagen/terminal.png');
  background-size: cover;       /* Hace que la imagen cubra todo el espacio */
  background-position: center;  /* Centra la imagen */
  background-repeat: no-repeat; /* Evita que la imagen se duplique */
  color: #ffffff;               /* Asegura que el texto sea blanco para que sea legible */
}