:root{ --blue:#001B7A; --yellow:#F2C200; --white:#ffffff; --text:#0f172a; --muted:#5b6b88; --card:#0c1b6d; --shadow: 0 10px 20px rgba(0,0,0,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:#f7f9ff}
.container{width:min(1180px,92vw);margin-inline:auto} /* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--blue);color:var(--white);border-bottom:4px solid var(--yellow)}
.site-header .nav{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--white)}
.logo{height:68px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))} /* Nav */
.main-nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}
.main-nav a{color:var(--white);text-decoration:none;font-weight:600;padding:10px 6px;border-radius:8px}
.main-nav a:hover{background:rgba(255,255,255,.1)}
.hamburger{display:none;background:transparent;border:0;padding:10px;border-radius:8px}
.hamburger span{display:block;width:24px;height:2px;background:var(--white);margin:5px 0} /* Hero */
.hero{background:linear-gradient(160deg,var(--blue) 0%,#031d83 65%);color:var(--white);position:relative}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(800px 300px at 20% 30%,rgba(242,194,0,.25),transparent 60%);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;padding:56px 0}
.hero-copy h1{font-size:40px;margin:0 0 12px}
.hero-copy p{font-size:18px;opacity:.95}
.highlight{color:var(--yellow)}
.cta{display:flex;gap:12px;margin-top:22px} .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;text-decoration:none;font-weight:700;transition:transform .05s ease;border:2px solid transparent}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--yellow);color:#1b1b1b}
.btn-outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.6)} .hero-art{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}
.card-metric{background:#0b1670;border:1px solid rgba(255,255,255,.1);padding:18px;border-radius:16px;box-shadow:var(--shadow)}
.metric-num{font-size:36px;font-weight:900;color:var(--yellow)}
.metric-label{opacity:.85} /* Sections */
.section{padding:64px 0;background:#fff}
.section.alt{background:#f1f5ff}
.section-head{margin-bottom:28px}
.section-head h2{margin:0 0 6px;font-size:32px;color:var(--blue)}
.section-head p{margin:0;color:var(--muted)} /* Cards */
.about-grid,.services-grid,.products-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
.about-card,.service-card,.product-card{background:#fff;border:1px solid #e6ecff;border-radius:18px;padding:20px;box-shadow:var(--shadow)}
.about-card .icon svg{width:34px;height:34px;fill:var(--yellow)}
.about-card h3,.service-card h3,.product-card h3{margin:10px 0 8px;color:var(--blue)}
.product-card{position:relative}
.product-card .badge{position:absolute;top:14px;right:14px;background:var(--yellow);color:#1b1b1b;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800} /* Contact form */
.contact-form{background:#fff;border:1px solid #e6ecff;border-radius:18px;padding:20px;box-shadow:var(--shadow)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:flex;flex-direction:column;gap:6px}
label{font-weight:700;color:var(--blue)}
input,textarea{border:1px solid #d8e0ff;border-radius:12px;padding:12px 14px;font:inherit;outline:none;background:#fbfcff}
input:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,27,122,.12)}
.error{display:none;color:#b00020;font-size:12px}
#formStatus{margin-top:10px;font-weight:700} /* Footer */
.site-footer{background:var(--blue);color:var(--white);margin-top:0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0}
.footer-brand img{height:60px}
.footer-right a{color:#dce7ff;text-decoration:none;margin-left:12px}
.footer-right a:hover{text-decoration:underline}
.copy{padding:10px 0;text-align:center;border-top:1px solid rgba(255,255,255,.2);font-size:13px} /* Responsive */
@media (max-width:1024px){.hero-inner{grid-template-columns:1fr;padding:40px 0}}
@media (max-width:880px){.about-grid,.services-grid,.products-grid{grid-template-columns:1fr 1fr}}
@media (max-width:680px){ .form-row{grid-template-columns:1fr} .main-nav ul{display:none;position:absolute;right:12px;top:64px;background:var(--blue);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:10px 12px;width:200px;box-shadow:var(--shadow)} .main-nav ul.show{display:block} .hamburger{display:inline-block}
} /* Social */
.footer-social{display:flex;align-items:center;gap:12px}
.footer-social a svg{width:22px;height:22px;fill:#ffffff;opacity:.9;transition:opacity .2s, transform .05s}
.footer-social a:hover svg{opacity:1;transform:translateY(-1px)} @media (max-width:680px){.footer-inner{flex-direction:column;align-items:flex-start;gap:12px}} .service-media{margin:10px 0 12px 0; border-radius:14px; overflow:hidden; border:1px solid #e6ecff; box-shadow: var(--shadow)}
.service-media img{width:100%; height:220px; object-fit:cover; display:block}
@media (max-width:880px){.service-media img{height:200px}} .svc-icon{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.svc-icon img{width:26px;height:26px;display:block;filter:drop-shadow(0 0 0 rgba(0,0,0,0));}
.about-card .icon img{width:34px;height:34px;display:block}
.service-media img{width:100%;height:220px;object-fit:cover;display:block;border-radius:14px;border:1px solid #e6ecff;box-shadow:var(--shadow)} /* Acessibilidade: skip link + outlines claros */
.skip-link{ position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.skip-link:focus{ left:12px;top:12px;width:auto;height:auto;background:#F2C200;color:#1b1b1b; padding:10px 14px;border-radius:10px;z-index:1000;box-shadow:var(--shadow);
}
:focus-visible{ outline:3px solid #F2C200;outline-offset:2px;
}
/* Melhor feedback em links/botões */
a:hover, .btn:hover{filter:brightness(1.05)}
a:active, .btn:active{transform:translateY(0)}
/* Preferências de redução de movimento */
@media (prefers-reduced-motion: reduce){ *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}
}
/* Animações sutis */
.has-js .reveal-on-scroll{opacity:0;transform:translateY(12px);will-change:opacity, transform;transition:opacity .48s ease, transform .48s ease}
.reveal-on-scroll.is-visible{opacity:1;transform:none}
.fade-up{} /* marker */
.fade-in{transform:none}
/* Aumentar contraste em textos sobre azul */
.hero p,.metric-label{color:#e6ecff}
/* Melhor foco no menu mobile */
.main-nav a:focus-visible{background:rgba(255,255,255,.18)} .about-visual{grid-column:1 / span 2}
.about-visual picture,.about-visual img{display:block;width:100%;height:320px;border-radius:16px;object-fit:cover;box-shadow:var(--shadow);border:1px solid #e6ecff26}
@media (max-width:980px){.about-visual{grid-column:1 / -1}.about-visual picture,.about-visual img{height:240px}} .values-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.values-list li{display:flex;align-items:flex-start;gap:12px;background:rgba(255,255,255,.05);padding:12px 14px;border-radius:10px;box-shadow:var(--shadow)}
.check-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#F2C200;color:#1b1b1b;font-weight:bold}
.values-list li strong{display:block;margin-bottom:2px;color:#fff}
.values-list li p{margin:0;font-size:.95rem;line-height:1.45;color:#e6ecff} /* Justified layout for Missão, Visão e Valores */
.about-col p, .values-justified p, .about-text p{ text-align: justify; text-justify: inter-word; hyphens: auto; line-height: 1.75;
}
.about-col h3{ text-transform: none; font-size: 1.25rem; margin: 0 0 10px 0;
}
.values-justified p{ margin: 0 0 12px 0; }
.values-justified p:last-child{ margin-bottom: 0; } /* Green disc + glyph size */ /* Pulse ring (light) */ 70%{ transform:scale(1.35); opacity:0} 100%{ transform:scale(1.35); opacity:0}
} /* Fill most of the button with the SVG (green disc) */ /* Soft pulse ring */ 70%{ transform:scale(1.35); opacity:0} 100%{ transform:scale(1.35); opacity:0}
} /* desktop */
@media (max-width:640px){ /* mobile */
} /* WA float: use exact uploaded image size; subtle pulse */ 70%{ transform:translate(-50%,-50%) scale(1.35); opacity:0 } 100%{ transform:translate(-50%,-50%) scale(1.35); opacity:0 }
} /* FINAL OVERRIDE: ensure only the white PNG shows, no green underlay */ /* hide any legacy SVG that might remain */ /* keep only the IMG */ /* disable any old ::before discs */ /* Position tweak: snug to bottom-right like the red square */ /* remove pulse/old layers */ /* garante que só o svg aparece */ /* sem pulse */ /* Disable legacy pulses/overlays from older versions */ /* Foco acessível */ /* Mobile */ :root{

:root{
  }

:root{
  }

:root{
  }

:root{

