:root{--navy:#0b3a63;--navy-2:#082a49;--blue:#1f6fa8;--cyan:#2cb4d4;--cyan-d:#1d97b5;--ink:#1c2733;--muted:#5b6876;--line:#e1e7ee;--bg:#ffffff;--bg-alt:#f3f6f9;--radius:6px;--shadow:0 10px 30px rgba(11,58,99,.08);--ff-h:'Montserrat',system-ui,sans-serif;--ff-b:'Open Sans',system-ui,sans-serif;--route-bg:var(--bg-alt);--sr-curtain:var(--navy);--sr-line:var(--line);--sr-muted:var(--muted);--sr-hover:#f3f8fb;--sr-accent:var(--cyan-d);--sr-font:var(--ff-h)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--ff-b);color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--ff-h);line-height:1.2;color:var(--navy)}h1{font-size:clamp(2rem,4.2vw,3.1rem);font-weight:800}h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;margin-bottom:.8rem}h3{font-size:1.1rem;font-weight:700;margin-bottom:.4rem}p+p{margin-top:1rem}.container{width:min(1180px,100% - 32px);margin-inline:auto}.narrow{width:min(820px,100% - 32px)}.center{text-align:center}.mt{margin-top:2.5rem}.muted{color:var(--muted)}.small{font-size:.85rem;opacity:.8}.ic{width:18px;height:18px;flex:none}.label{display:flex;align-items:center;gap:.75rem;font-family:'IBM Plex Mono',monospace;font-size:.82rem;font-weight:500;color:var(--cyan-d);margin-bottom:.8rem}.label::before{content:"";width:28px;height:1px;background:currentColor}.label.center{justify-content:center}.label.light{color:var(--cyan)}.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ff-h);font-weight:600;font-size:.92rem;padding:.85rem 1.5rem;border-radius:var(--radius);border:2px solid transparent;transition:.2s;cursor:pointer}.btn-primary{background:var(--cyan);color:#fff}.btn-primary:hover{background:var(--cyan-d)}.btn-secondary{background:var(--navy);color:#fff}.btn-secondary:hover{background:var(--blue)}.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{background:#e8f6fa}.btn-outline-light{border-color:rgba(255,255,255,.6);color:#fff}.btn-outline-light:hover{background:rgba(255,255,255,.1)}.topbar{background:var(--navy-2);color:#cfe0ee;font-size:.82rem}.topbar-in{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;flex-wrap:wrap}.topbar span{display:flex;align-items:center;gap:.4rem}.topbar a{display:inline-flex;align-items:center;gap:.4rem;margin-left:1.2rem}.topbar a:hover{color:#fff}.topbar .ic{width:14px;height:14px}.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);transition:box-shadow .2s}.header.scrolled{box-shadow:0 4px 20px rgba(0,0,0,.08)}.header-in{display:flex;align-items:center;justify-content:space-between;height:84px}.logo img{height:58px;width:auto}.nav{display:flex;align-items:center;gap:2rem}.nav a:not(.btn){font-family:var(--ff-h);font-weight:600;font-size:.93rem;color:var(--ink);position:relative;padding:.3rem 0}.nav a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-4px;width:0;background:var(--cyan);transition:.25s;height:1px}.nav a.active::after,.nav a:not(.btn):hover::after{width:100%}.nav a.active{color:var(--navy)}.nav-toggle{display:none;background:0 0;border:0;color:var(--navy);cursor:pointer}.nav-toggle .ic{width:28px;height:28px}.hero{position:relative;color:#fff;padding:7.5rem 0 7rem;background:var(--navy-2);overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,42,73,.97) 0,rgba(8,42,73,.9) 38%,rgba(8,42,73,.45) 75%,rgba(8,42,73,.25) 100%)}.hero-in{position:relative;z-index:1}.hero h1{color:#fff;margin-bottom:1.2rem;max-width:640px}.lead{font-size:1.1rem;color:#d6e4f0;max-width:580px}.hero-actions{display:flex;gap:1rem;margin:2rem 0 1.6rem;flex-wrap:wrap}.hero-checks{list-style:none;display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.92rem;color:#d6e4f0}.hero-checks li{display:flex;align-items:center;gap:.4rem}.hero-checks .ic{color:var(--cyan)}.photo{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:linear-gradient(135deg,#1a5582,#0b3a63);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;color:rgba(255,255,255,.75);text-align:center;padding:1rem;font-size:.85rem}.photo.tall{aspect-ratio:4/4.3}.photo.portrait{aspect-ratio:3/4}.photo-ic{width:72px;height:72px;stroke-width:1.1;color:var(--cyan);position:relative}.photo span{position:relative;font-style:italic}.stats{background:#fff;border-bottom:1px solid var(--line)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:2.2rem 1rem;text-align:center;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font-family:var(--ff-h);font-size:2.4rem;color:var(--navy);font-weight:800}.stat>span{color:var(--muted);font-size:.92rem}.section{padding:5.5rem 0}.section.alt{background:var(--bg-alt)}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:.5rem 4rem;align-items:end;margin:0 0 3rem}.section-head>.label{grid-column:1/-1}.section-head h2{margin:0}.section-head>p:not(.label){color:var(--muted);grid-column:2}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--cyan);border-radius:var(--radius);padding:2rem;transition:.25s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-ic{width:42px;height:42px;color:var(--blue);margin-bottom:1rem}.card p{color:var(--muted);font-size:.95rem}.more{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;font-family:var(--ff-h);font-weight:600;font-size:.88rem;color:var(--cyan-d)}.more:hover{gap:.7rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.diffs{display:grid;gap:1.2rem;margin-top:2rem}.diff{display:flex;gap:1rem}.diff-ic{width:40px;height:40px;flex:none;color:var(--cyan-d);background:#e6f6fa;padding:8px;border-radius:var(--radius)}.diff p{color:var(--muted);font-size:.93rem}.pmoc{background:var(--navy);color:#d6e4f0}.pmoc h2{color:#fff}.pmoc-in{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}.pmoc-in p{margin-bottom:1.6rem}.pmoc-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pmoc-list li{display:flex;align-items:center;gap:.7rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:1.1rem;border-radius:var(--radius);font-weight:600;color:#fff}.pmoc-list .ic{color:var(--cyan);width:22px;height:22px}.sectors{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.sector{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center;padding:1.4rem .6rem;border:1px solid var(--line);border-radius:var(--radius);font-size:.88rem;font-weight:600;transition:.2s}.sector .ic{width:30px;height:30px;color:var(--blue)}.sector:hover{border-color:var(--cyan);background:#f2fbfd}.clients{margin-top:3.5rem}.brand-row,.client-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 3rem;margin-top:1rem}.client-row span{font-family:var(--ff-h);font-weight:800;font-size:1.35rem;color:#8a97a5;letter-spacing:.02em}.brands{padding:3rem 0;background:var(--bg-alt);border-top:1px solid var(--line)}.brand-row span{font-family:var(--ff-h);font-weight:700;font-size:1.15rem;color:#7b8896;text-transform:uppercase;letter-spacing:.08em}.cta{background:linear-gradient(90deg,var(--cyan-d),var(--blue));color:#fff;padding:3.5rem 0}.cta-in{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.cta h2{color:#fff;margin-bottom:.3rem}.cta-actions{display:flex;gap:1rem;flex-wrap:wrap}.page-hero{background:linear-gradient(120deg,var(--navy-2),var(--navy));color:#d6e4f0;padding:4rem 0}.page-hero h1{color:#fff;margin:.4rem 0 .6rem}.crumbs{font-size:.85rem;color:#9fb8cc}.crumbs a:hover{color:#fff}.checks{list-style:none;display:grid;gap:.55rem;margin:1.4rem 0}.checks li{display:flex;gap:.55rem;align-items:flex-start}.checks .ic{color:var(--cyan-d);margin-top:4px}.engineer{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem;align-items:center}.certs{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.8rem}.cert{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem;text-align:center}.cert strong{display:block;font-family:var(--ff-h);color:var(--navy);font-size:1.2rem}.cert span{font-size:.78rem;color:var(--muted)}.cards.three{grid-template-columns:repeat(3,1fr)}.process{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;counter-reset:s}.process li{border-left:3px solid var(--cyan);padding:0 0 0 1.2rem}.step{font-family:var(--ff-h);font-weight:800;font-size:2rem;color:#c9d6e2}.process p{color:var(--muted);font-size:.93rem}.service-index{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:4rem}.service-index a{border:1px solid var(--line);padding:.5rem 1rem;border-radius:40px;font-size:.85rem;font-weight:600}.service-index a:hover{border-color:var(--cyan);color:var(--cyan-d)}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:3rem 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}.service-row.reverse .service-media{order:2}.service-ic{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;background:#e6f6fa;color:var(--cyan-d);border-radius:var(--radius);margin-bottom:1rem}.service-ic .ic{width:28px;height:28px}.service-row p{color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;margin-top:1.5rem}.tag{background:#fff;border:1px solid var(--line);padding:.6rem 1.1rem;border-radius:var(--radius);font-weight:600;font-size:.9rem;color:var(--navy)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:start}.contact-info{display:grid;gap:1rem}.info-card{display:flex;gap:1rem;align-items:center;border:1px solid var(--line);padding:1.1rem 1.2rem;border-radius:var(--radius);transition:.2s}a.info-card:hover{border-color:var(--cyan);box-shadow:var(--shadow)}.info-card .ic{width:26px;height:26px;color:var(--cyan-d)}.info-card strong{display:block;font-family:var(--ff-h);color:var(--navy)}.info-card span{color:var(--muted);font-size:.93rem}.form{background:var(--bg-alt);padding:2.4rem;border-radius:var(--radius);display:grid;gap:1rem;border-top:4px solid var(--cyan)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form label{display:grid;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--navy)}.form input,.form select,.form textarea{font:inherit;font-weight:400;padding:.75rem .9rem;border:1px solid #cbd5df;border-radius:var(--radius);background:#fff;color:var(--ink)}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--cyan);border-color:var(--cyan)}.form .btn{justify-self:start}.form-ok{color:#18794e;font-weight:600}.faq-item{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq-item summary{font-family:var(--ff-h);font-weight:600;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq-item summary::after{content:"+";color:var(--cyan-d);font-size:1.4rem;line-height:1}.faq-item[open] summary::after{content:"-"}.faq-item p{margin-top:.7rem;color:var(--muted)}.footer{background:var(--navy-2);color:#b6c8d8;padding-top:4rem;font-size:.92rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.4fr;gap:2.5rem;padding-bottom:3rem}.footer-logo{height:56px;width:auto;background:#fff;padding:8px 12px;border-radius:var(--radius);margin-bottom:1rem}.footer h4{color:#fff;font-size:.95rem;margin-bottom:1rem}.footer ul{list-style:none;display:grid;gap:.55rem}.footer a:hover{color:#fff}.contact-list li{display:flex;gap:.6rem}.contact-list .ic{color:var(--cyan);margin-top:3px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.2rem 0;font-size:.78rem;color:#7f97ad}.wpp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:60;transition:.2s}.wpp-float:hover{transform:scale(1.07)}.wpp-float svg{width:32px;height:32px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}@media (max-width:1000px){.contact-grid,.engineer,.pmoc-in,.service-row,.split{grid-template-columns:1fr;gap:2.5rem}.service-row.reverse .service-media{order:0}.cards,.cards.three{grid-template-columns:1fr 1fr}.sectors{grid-template-columns:repeat(3,1fr)}.footer-grid,.process{grid-template-columns:1fr 1fr}.engineer-photo{max-width:360px}}@media (max-width:860px){.nav-toggle{display:block}.nav{position:absolute;top:84px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:1rem 16px 1.5rem;border-bottom:1px solid var(--line);display:none}.nav.open{display:flex}.nav a:not(.btn){padding:.9rem 0;border-bottom:1px solid var(--line)}.nav .btn{margin-top:1rem;justify-content:center}.topbar-in>span:first-child{display:none}}@media (max-width:640px){.cards,.cards.three,.certs,.form-row,.pmoc-list,.process{grid-template-columns:1fr}.certs,.stats-grid{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat{border-bottom:1px solid var(--line)}.sectors{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.section{padding:4rem 0}.hero{padding:4.5rem 0}.hero::after{background:rgba(8,42,73,.86)}.logo img{height:46px}.topbar a{margin:0 1rem 0 0}.form{padding:1.5rem}.stat strong{font-size:1.9rem;white-space:nowrap}}.photo.has-img{padding:0;background:#0b3a63}.photo.has-img::before{display:none}.photo.has-img img{position:relative;width:100%;height:100%;object-fit:cover;display:block}.page-hero{background:linear-gradient(90deg,rgba(8,42,73,.95) 35%,rgba(11,58,99,.75)),url(../img/fotos/equipe.jpg) center/cover no-repeat}.sr-t{color:var(--navy)}.svc-rows ol{list-style:none;border-top:1px solid var(--sr-line)}.svc-rows li{border-bottom:1px solid var(--sr-line)}.svc-rows a{position:relative;display:grid;grid-template-columns:4rem 1.1fr 1.3fr 2rem;align-items:center;gap:1rem;padding:1.4rem .25rem}.svc-rows a::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--sr-accent);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.sr-n{font-family:'IBM Plex Mono',monospace;font-size:.8rem;color:var(--sr-muted);transition:color .3s}.sr-t{font-family:var(--sr-font);font-weight:700;font-size:1.2rem;line-height:1.3;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.sr-d{color:var(--sr-muted);font-size:.92rem}.sr-a{justify-self:end;font-size:1.1rem;opacity:.3;transition:opacity .3s,transform .3s,color .3s}.svc-rows a:focus-visible::before,.svc-rows a:hover::before{transform:scaleX(1)}.svc-rows a:focus-visible .sr-t,.svc-rows a:hover .sr-t{transform:translateX(6px)}.svc-rows a:focus-visible .sr-a,.svc-rows a:focus-visible .sr-n,.svc-rows a:hover .sr-a,.svc-rows a:hover .sr-n{color:var(--sr-accent);opacity:1}.svc-rows a:focus-visible .sr-a,.svc-rows a:hover .sr-a{transform:translateX(4px)}@media (max-width:760px){.svc-rows a{grid-template-columns:2.6rem 1fr 1.2rem;row-gap:.2rem}.sr-n{grid-column:1;grid-row:1/3;align-self:start;padding-top:.3rem}.sr-t{grid-column:2;grid-row:1}.sr-d{grid-column:2;grid-row:2}.sr-a{grid-column:3;grid-row:1/3;opacity:.6}}.route{padding:3.5rem 0;border-block:1px solid var(--sr-line);background:var(--route-bg)}.route-in{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.route-k{display:flex;gap:1rem;font-family:'IBM Plex Mono',monospace;font-size:.8rem;color:var(--sr-accent);margin-bottom:.6rem}.route-k span:last-child{color:var(--sr-muted)}.route-a{font-family:var(--sr-font);font-weight:700;font-size:1.45rem;line-height:1.35}.route-c{color:var(--sr-muted);font-size:.92rem;margin-top:.4rem}.route-btns{display:flex;gap:.8rem;flex-wrap:wrap}.js-photos .photo.has-img::after{content:"";position:absolute;inset:0;z-index:2;background:var(--sr-curtain);transform-origin:top;transition:transform 1s cubic-bezier(.7,0,.2,1)}.js-photos .photo.has-img img{transform:scale(1.12);transition:transform 1.6s cubic-bezier(.2,.8,.2,1)}.js-photos .photo.has-img.shown::after{transform:scaleY(0)}.js-photos .photo.has-img.shown img{transform:none}@media (prefers-reduced-motion:reduce){.js-photos .photo.has-img::after{display:none}.js-photos .photo.has-img img{transform:none}}.hero-cap{position:absolute;z-index:1;right:max(16px,calc((100vw - 1180px)/ 2));bottom:1.4rem;display:flex;gap:1.5rem;font-family:'IBM Plex Mono',monospace;font-size:.75rem;color:rgba(214,228,240,.75)}.hero-cap span+span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cyan);margin-right:.5rem;vertical-align:middle;animation:2.4s infinite blink}@keyframes blink{50%{opacity:.25}}.btn{position:relative;overflow:hidden}.btn-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-100%);transition:transform .7s}.btn-primary:hover::after{transform:translateX(100%)}@media (max-width:900px){.section-head{grid-template-columns:1fr}.section-head>p:not(.label){grid-column:1}.hero-cap{display:none}}