
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/montserrat-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/montserrat-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-latin-500-normal.woff2') format('woff2');}
:root{
  --newen-blue:#0A2540;
  --newen-orange:#FF6200;
  --newen-orange-dark:#C94D00;
  --newen-darkgray:#2C3E50;
  --newen-lightgray:#F4F7FA;
  --newen-white:#FFFFFF;
  --muted:#51565E;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:96px;}
body{margin:0;font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--newen-darkgray);background:var(--newen-white);-webkit-text-size-adjust:100%;}
h1,h2,h3,h4,.brand-font{font-family:'Montserrat','Inter',system-ui,sans-serif;}
a{color:inherit;}
:focus-visible{outline:2px solid var(--newen-orange);outline-offset:3px;border-radius:4px;}
.skip{position:absolute;left:-9999px;top:8px;background:var(--newen-blue);color:#fff;padding:10px 16px;border-radius:6px;z-index:100;text-decoration:none;font-size:14px;}
.skip:focus{left:12px;}

nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 40px;border-bottom:0.5px solid #E3E7EC;position:sticky;top:0;background:#FFFFFF;z-index:10;}
nav .brand img{height:60px;width:auto;display:block;}
nav .links{display:flex;gap:24px;font-size:13.5px;}
nav .links a{color:var(--newen-darkgray);text-decoration:none;}
nav .links a:hover{color:var(--newen-orange-dark);}
nav .right{display:flex;align-items:center;gap:14px;}
.langs{display:flex;gap:4px;font-size:12px;}
.langs a{color:var(--muted);text-decoration:none;padding:6px 7px;border-bottom:1.5px solid transparent;}
.langs a:hover{color:var(--newen-blue);}
.langs a[aria-current="true"]{color:var(--newen-blue);border-bottom-color:var(--newen-orange);font-weight:500;}

.btn-primary{background:var(--newen-orange);color:#FFFFFF;font-size:14px;font-weight:500;padding:11px 22px;border-radius:6px;text-decoration:none;display:inline-block;border:none;}
.btn-primary:hover{background:var(--newen-orange-dark);}
.btn-primary.sm{padding:9px 16px;font-size:13px;}
.btn-secondary{border:0.5px solid #AEB6C2;color:var(--newen-blue);font-size:14px;font-weight:500;padding:11px 22px;border-radius:6px;text-decoration:none;display:inline-block;}
.btn-secondary:hover{border-color:var(--newen-blue);}

.hero{background-image:radial-gradient(#E3E7EC 1px, transparent 1px);background-size:18px 18px;padding:64px 40px;}
.hero-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:start;}
.eyebrow{font-family:'Montserrat',sans-serif;font-weight:600;font-size:12px;letter-spacing:1.5px;color:var(--newen-orange-dark);text-transform:uppercase;margin:0 0 16px;line-height:1.5;}
h1.hero-title{font-weight:700;font-size:42px;line-height:1.15;letter-spacing:-0.5px;color:var(--newen-blue);margin:0 0 20px;}
.hero-sub{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 28px;max-width:440px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.why-card{background:#FFFFFF;border:0.5px solid #D5DBE3;border-radius:12px;padding:26px;}
.why-card p.label{font-family:'Montserrat',sans-serif;font-weight:600;font-size:11px;letter-spacing:1px;color:var(--newen-orange-dark);text-transform:uppercase;margin:0 0 16px;}
.why-list{display:flex;flex-direction:column;gap:14px;margin-bottom:20px;}
.why-item{display:flex;gap:12px;align-items:flex-start;}
.why-dot{width:7px;height:7px;border-radius:50%;background:var(--newen-orange);margin-top:7px;flex-shrink:0;}
.why-item span.txt{font-size:14px;color:var(--newen-darkgray);line-height:1.5;}
.outcome-box{background:var(--newen-blue);border-radius:8px;padding:16px 18px;}
.outcome-box p.label{font-family:'Montserrat',sans-serif;font-weight:600;font-size:10px;letter-spacing:1px;color:#A9BBD0;text-transform:uppercase;margin:0 0 8px;}
.outcome-box p.text{font-size:14.5px;font-weight:500;color:#FFFFFF;margin:0;line-height:1.45;}

.stats{background:var(--newen-lightgray);padding:28px 40px;}
.stats-grid{max-width:420px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;text-align:center;}
.stat-num{font-family:'Montserrat',sans-serif;font-weight:700;font-size:26px;color:var(--newen-blue);margin:0;}
.stat-label{font-size:12.5px;color:var(--muted);margin:4px 0 0;}

section{padding:56px 40px;}
.section-label{font-family:'Montserrat',sans-serif;font-weight:600;font-size:12px;letter-spacing:1px;color:var(--muted);text-transform:uppercase;text-align:center;margin:0 0 8px;}
.section-title{font-weight:700;font-size:26px;line-height:1.25;color:var(--newen-blue);text-align:center;margin:0 0 32px;}

.steps{max-width:1100px;margin:32px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;}
.step-num{font-family:'Montserrat',sans-serif;font-weight:700;font-size:20px;color:var(--newen-orange-dark);margin:0 0 8px;}
.step-title{font-size:15px;font-weight:500;color:var(--newen-blue);margin:0 0 6px;}
.step-desc{font-size:13.5px;color:var(--muted);margin:0;line-height:1.5;}

.services-wrap{background:var(--newen-lightgray);}
.services-grid{max-width:1100px;margin:32px auto 0;display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:repeat(3,auto);gap:16px;}
.service-featured{background:var(--newen-blue);border-radius:12px;padding:24px;grid-row:span 3;display:flex;flex-direction:column;justify-content:space-between;gap:24px;}
.service-featured h3{color:#FFFFFF;font-size:19px;margin:0 0 10px;}
.service-featured p{color:#D3DDE9;font-size:14px;line-height:1.55;margin:0;}
.service-featured a{font-size:13px;color:#FFA463;font-weight:500;text-decoration:none;}
.service-card{background:#FFFFFF;border:0.5px solid #D5DBE3;border-radius:12px;padding:18px;}
.service-card h3{font-family:'Inter',sans-serif;font-size:14.5px;font-weight:500;color:var(--newen-blue);margin:0 0 5px;}
.service-card p{font-size:13px;color:var(--muted);margin:0;line-height:1.45;}

.trayectoria-intro{max-width:720px;margin:0 auto 32px;text-align:center;font-size:15px;line-height:1.65;color:var(--muted);}
.trayectoria-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.tray-card{border:0.5px solid #D5DBE3;border-radius:12px;padding:20px;}
.tray-card h3{font-family:'Inter',sans-serif;font-size:15px;font-weight:500;color:var(--newen-blue);margin:0 0 8px;}
.tray-card p{font-size:13.5px;color:var(--muted);margin:0;line-height:1.55;}

.proyectos-wrap{background:var(--newen-lightgray);}
.proyecto-card{max-width:1100px;margin:32px auto 0;background:#FFFFFF;border:0.5px solid #D5DBE3;border-radius:12px;padding:24px 28px;}
.proyecto-card h3{font-family:'Inter',sans-serif;font-size:16px;font-weight:500;color:var(--newen-blue);margin:0 0 8px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
.proyecto-badge{font-family:'Montserrat',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;color:var(--newen-orange-dark);background:#FFE4D1;padding:3px 9px;border-radius:20px;}
.proyecto-card p{font-size:14px;color:var(--muted);margin:0;line-height:1.6;max-width:760px;}

.contacto-grid{max-width:800px;margin:0 auto;text-align:center;}
.contacto-grid p.big{font-size:20px;font-weight:500;color:var(--newen-blue);margin:0 auto 24px;max-width:560px;line-height:1.4;}
.contact-form{max-width:460px;margin:0 auto 24px;text-align:left;display:flex;flex-direction:column;gap:12px;}
.contact-form label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.contact-form input,.contact-form textarea{font-family:'Inter',sans-serif;font-size:15px;padding:12px 14px;border:0.5px solid #AEB6C2;border-radius:6px;color:var(--newen-darkgray);resize:vertical;width:100%;}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--newen-orange);outline-offset:1px;border-color:var(--newen-orange);}
.contact-form button{align-self:center;cursor:pointer;font-family:'Inter',sans-serif;}
.form-divider{font-size:12.5px;color:var(--muted);margin:8px 0 18px;}
.contacto-ctas{display:flex;gap:14px;justify-content:center;margin-bottom:20px;flex-wrap:wrap;}
.contacto-meta{font-size:13px;color:var(--muted);}
.contacto-meta a{color:var(--newen-blue);text-decoration:none;}
.contacto-meta a:hover{text-decoration:underline;}

footer{border-top:0.5px solid #E3E7EC;padding:24px 40px;text-align:center;font-size:12.5px;color:var(--muted);}
footer .foot-logo{height:44px;width:auto;display:block;margin:0 auto 12px;}

@media (max-width:900px){
  nav{padding:10px 20px;flex-wrap:wrap;}
  nav .links{display:none;}
  nav .brand img{height:48px;}
  .hero{padding:40px 20px;}
  .hero-grid{grid-template-columns:1fr;gap:28px;}
  h1.hero-title{font-size:32px;}
  .hero-sub{max-width:none;}
  section{padding:44px 20px;}
  .stats{padding:24px 20px;}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));}
  .services-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
  .service-featured{grid-row:auto;grid-column:1 / -1;}
  .trayectoria-grid{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .services-grid{grid-template-columns:1fr;}
  .steps{grid-template-columns:1fr;}
  h1.hero-title{font-size:28px;}
  .section-title{font-size:22px;}
  nav .right .btn-primary{display:none;}
  .stats-grid{max-width:100%;}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
