
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --navy-950:#07131F; --navy-900:#0B1F3A; --navy-800:#102847; --navy-700:#16385F;
  --cyan-500:#00C2E0; --cyan-600:#00A8C4; --green-500:#21C28B; --gold-500:#D9A441;
  --white:#F8FAFC; --slate-100:#E2E8F0; --slate-300:#CBD5E1; --slate-400:#94A3B8; --slate-500:#64748B;
  --card:rgba(16,40,71,.76); --border:rgba(0,194,224,.16); --shadow:0 28px 80px rgba(0,0,0,.34);
}
html { scroll-behavior:smooth; }
body { font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:var(--navy-900); color:var(--slate-100); min-height:100vh; overflow-x:hidden; }
body::before { content:''; position:fixed; inset:0; z-index:-2; background: radial-gradient(circle at 18% 8%, rgba(0,194,224,.16), transparent 32%), radial-gradient(circle at 78% 20%, rgba(33,194,139,.10), transparent 34%), linear-gradient(135deg, var(--navy-950), var(--navy-900) 52%, var(--navy-800)); }
body::after { content:''; position:fixed; inset:0; z-index:-1; opacity:.55; background-image:linear-gradient(rgba(0,194,224,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(0,194,224,.035) 1px, transparent 1px); background-size:54px 54px; mask-image:linear-gradient(to bottom, black, transparent 88%); pointer-events:none; }
a { color:inherit; }
.container { width:min(1160px, calc(100% - 48px)); margin:0 auto; }
.site-header { position:sticky; top:0; z-index:50; backdrop-filter:blur(16px); background:rgba(7,19,31,.82); border-bottom:1px solid rgba(255,255,255,.07); }
.navbar { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; align-items:center; gap:12px; text-decoration:none; }
.brand-mark { width:42px; height:42px; border-radius:13px; display:grid; place-items:center; background:linear-gradient(135deg, var(--cyan-500), var(--green-500)); box-shadow:0 12px 32px rgba(0,194,224,.24); }
.brand-mark svg { width:24px; height:24px; stroke:var(--navy-950); }
.brand-name { display:block; font-family:'DM Serif Display', Georgia, serif; font-size:1.42rem; line-height:1; letter-spacing:-.02em; color:var(--white); }
.brand-name span { color:var(--cyan-500); }
.brand-sub { display:block; margin-top:3px; color:var(--slate-400); font-size:.72rem; text-transform:uppercase; letter-spacing:.16em; font-weight:800; }
.nav-links { list-style:none; display:flex; align-items:center; gap:26px; }
.nav-links a { text-decoration:none; color:var(--slate-300); font-size:.91rem; font-weight:700; transition:.2s ease; }
.nav-links a:hover, .nav-links a.active { color:var(--cyan-500); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:12px 22px; border-radius:12px; border:1px solid transparent; font-weight:900; font-size:.92rem; text-decoration:none; cursor:pointer; transition:.2s ease; }
.btn-primary { background:linear-gradient(135deg, var(--cyan-500), var(--green-500)); color:var(--navy-950); box-shadow:0 16px 34px rgba(0,194,224,.18); }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 22px 46px rgba(0,194,224,.25); }
.btn-outline { color:var(--cyan-500); border-color:rgba(0,194,224,.35); background:rgba(0,194,224,.06); }
.btn-outline:hover { background:rgba(0,194,224,.11); transform:translateY(-2px); }
.hero, .page-hero { padding:92px 0 76px; }
.hero-layout { display:grid; grid-template-columns:1.06fr .94fr; gap:54px; align-items:center; }
.eyebrow, .hero-badge { display:inline-flex; align-items:center; gap:10px; padding:8px 14px; border:1px solid rgba(0,194,224,.28); border-radius:999px; background:rgba(0,194,224,.08); color:var(--cyan-500); font-size:.76rem; text-transform:uppercase; letter-spacing:.12em; font-weight:900; margin-bottom:22px; }
.eyebrow::before, .hero-badge span { content:''; width:8px; height:8px; border-radius:999px; background:var(--green-500); box-shadow:0 0 0 8px rgba(33,194,139,.10); }
h1, .section-title { font-family:'DM Serif Display', Georgia, serif; color:var(--white); letter-spacing:-.045em; }
h1 { font-size:clamp(2.7rem,5.8vw,5.6rem); line-height:.98; max-width:880px; margin-bottom:24px; }
.page-hero h1 { font-size:clamp(2.4rem,4.5vw,4.8rem); }
.hero-lead, .section-text, .lead { color:var(--slate-300); line-height:1.75; font-size:1.06rem; max-width:760px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
.trust-row { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:40px; max-width:660px; }
.trust-card, .panel, .card, .timeline-box, .contact-form, .about-card, .product-card, .diff-card { background:var(--card); border:1px solid var(--border); border-radius:22px; box-shadow:var(--shadow); }
. .trust-card { padding:18px; }
.trust-card strong { display:block; color:var(--white); font-size:1.3rem; }
.trust-card small { color:var(--slate-400); font-weight:700; }
.hero-panel { background:linear-gradient(180deg, rgba(16,40,71,.92), rgba(7,19,31,.88)); border:1px solid rgba(0,194,224,.18); border-radius:28px; padding:28px; box-shadow:var(--shadow); }
.panel-top { display:flex; justify-content:space-between; gap:18px; margin-bottom:22px; }
.panel-title { color:var(--white); font-weight:900; }
.panel-sub { color:var(--slate-400); font-size:.88rem; margin-top:6px; }
.status-pill, .pill { align-self:flex-start; white-space:nowrap; color:var(--green-500); background:rgba(33,194,139,.09); border:1px solid rgba(33,194,139,.28); border-radius:999px; padding:7px 11px; font-size:.74rem; font-weight:900; }
.ecosystem-map { display:grid; gap:14px; }
.system-row { display:grid; grid-template-columns:48px 1fr auto; gap:14px; align-items:center; padding:16px; border-radius:18px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.07); }
.system-logo { width:48px; height:48px; border-radius:15px; display:grid; place-items:center; background:rgba(0,194,224,.10); border:1px solid rgba(0,194,224,.18); font-size:1.35rem; }
.system-copy strong { display:block; color:var(--white); margin-bottom:4px; }
.system-copy span { display:block; color:var(--slate-400); font-size:.88rem; line-height:1.45; }
.system-tag { color:var(--cyan-500); font-size:.76rem; font-weight:900; }
.section { padding:78px 0; }
.section-soft { background:rgba(7,19,31,.32); border-top:1px solid rgba(255,255,255,.05); border-bottom:1px solid rgba(255,255,255,.05); }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:34px; margin-bottom:34px; }
.section-title { font-size:clamp(2rem,3.6vw,3.35rem); line-height:1.05; margin-bottom:18px; max-width:760px; }
.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:start; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.card, .about-card, .diff-card { padding:28px; }
.card h3, .about-card h3, .diff-card h3 { color:var(--white); font-size:1.16rem; margin-bottom:10px; }
.card p, .about-card p, .diff-card p { color:var(--slate-400); line-height:1.7; }
.values-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:22px; }
.value-item { padding:16px; border-radius:16px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.07); }
.value-item strong { display:block; color:var(--white); margin-bottom:6px; }
.value-item span { color:var(--slate-400); font-size:.9rem; line-height:1.55; }
.timeline { position:relative; display:grid; gap:18px; }
.timeline-item { position:relative; display:grid; grid-template-columns:22px 1fr; gap:16px; }
.timeline-dot { width:14px; height:14px; border-radius:50%; background:var(--cyan-500); margin-top:26px; box-shadow:0 0 0 8px rgba(0,194,224,.10); }
.timeline-box { padding:24px; }
.timeline-box small { color:var(--cyan-500); text-transform:uppercase; letter-spacing:.12em; font-weight:900; }
.timeline-box h3 { color:var(--white); margin:7px 0 8px; }
.timeline-box p { color:var(--slate-400); line-height:1.7; }
.products-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.product-card { display:block; padding:0; text-decoration:none; overflow:hidden; transition:.25s ease; }
.product-card:hover { transform:translateY(-6px); border-color:rgba(0,194,224,.46); }
.product-inner { padding:30px; min-height:100%; }
.product-logo { width:58px; height:58px; border-radius:18px; display:grid; place-items:center; background:rgba(0,194,224,.10); border:1px solid rgba(0,194,224,.24); font-size:1.65rem; margin-bottom:22px; }
.product-kicker { color:var(--cyan-500); font-size:.74rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.product-card h3 { color:var(--white); font-size:1.8rem; font-family:'DM Serif Display', Georgia, serif; margin:8px 0 12px; }
.product-card p { color:var(--slate-400); line-height:1.65; margin-bottom:18px; }
.product-list { list-style:none; display:grid; gap:9px; margin:18px 0 24px; }
.product-list li { color:var(--slate-300); font-size:.9rem; display:flex; gap:9px; align-items:start; }
.product-list li::before { content:'•'; color:var(--green-500); font-weight:900; }
.product-link { color:var(--cyan-500); font-weight:900; }
.diff-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:34px; }
.diff-card span { display:block; font-size:1.7rem; margin-bottom:16px; }
.contact-layout { display:grid; grid-template-columns:.92fr 1.08fr; gap:38px; align-items:start; }
.contact-cards { display:grid; gap:14px; margin-top:28px; }
.contact-card { display:flex; gap:14px; align-items:center; padding:17px; border-radius:18px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.07); }
.contact-card i { font-style:normal; font-size:1.28rem; }
.contact-card strong { display:block; color:var(--white); margin-bottom:4px; }
.contact-card a, .contact-card span { color:var(--slate-300); text-decoration:none; }
.contact-form { padding:28px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:20px; }
.field.full { grid-column:1/-1; }
.field label { display:block; color:var(--slate-300); font-size:.86rem; font-weight:900; margin-bottom:8px; }
.field input, .field select, .field textarea { width:100%; border:1px solid rgba(0,194,224,.18); border-radius:14px; background:rgba(7,19,31,.62); color:var(--white); padding:13px 14px; font:inherit; outline:none; }
.field textarea { min-height:132px; resize:vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color:var(--cyan-500); box-shadow:0 0 0 4px rgba(0,194,224,.10); }
.form-help { color:var(--slate-500); font-size:.82rem; line-height:1.55; margin-top:14px; }
footer { padding:52px 0 32px; background:rgba(7,19,31,.88); border-top:1px solid rgba(255,255,255,.07); }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:34px; margin-bottom:34px; }
.footer-brand p { color:var(--slate-400); line-height:1.65; margin-top:14px; max-width:360px; }
.footer-col h4 { color:var(--slate-500); text-transform:uppercase; font-size:.75rem; letter-spacing:.14em; margin-bottom:15px; }
.footer-col ul { list-style:none; display:grid; gap:10px; }
.footer-col a { color:var(--slate-300); text-decoration:none; font-size:.9rem; }
.footer-col a:hover { color:var(--cyan-500); }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:24px; border-top:1px solid rgba(255,255,255,.07); color:var(--slate-500); font-size:.84rem; }
@media (max-width: 980px) { .nav-links { display:none; } .hero-layout, .grid-2, .contact-layout { grid-template-columns:1fr; } .products-grid, .grid-3 { grid-template-columns:1fr 1fr; } .diff-grid { grid-template-columns:1fr 1fr; } .footer-grid { grid-template-columns:1fr 1fr; } }
@media (max-width: 640px) { .container { width:min(100% - 32px, 1160px); } .navbar { min-height:70px; } .brand-mark { width:38px; height:38px; } .hero, .page-hero { padding:64px 0 52px; } .section { padding:58px 0; } .trust-row, .products-grid, .grid-3, .diff-grid, .values-grid, .form-grid { grid-template-columns:1fr; } .footer-grid { grid-template-columns:1fr; } .footer-bottom { flex-direction:column; } .system-row { grid-template-columns:44px 1fr; } .system-tag { grid-column:2; } }

/* ─────────────────────────────────────────────
   Ajustes de marca, logos e versão clara
   ───────────────────────────────────────────── */
.brand { min-width: 170px; }
.brand-logo { display:block; width:auto; object-fit:contain; }
.brand-logo-header { height:54px; max-width:260px; }
.brand-logo-footer { height:64px; max-width:300px; }
.hero-logo-wrap { margin-bottom:22px; }
.hero-logo-wrap img { display:block; width:min(430px, 100%); height:auto; }
.system-logo { overflow:hidden; background:#07131F; }
.system-logo img { width:100%; height:100%; object-fit:cover; border-radius:inherit; display:block; }
.system-row:nth-child(3) .system-logo img { object-fit:contain; padding:8px; background:linear-gradient(135deg, #07131F, #102847); }
.product-logo-image { overflow:hidden; background:#07131F; }
.product-logo-image img { width:100%; height:100%; object-fit:cover; border-radius:inherit; display:block; }
#licitbrain-produto .product-logo-image img { object-fit:contain; padding:10px; background:linear-gradient(135deg, #07131F, #102847); }

body.theme-light {
  --white:#0F172A;
  --slate-100:#172033;
  --slate-300:#475569;
  --slate-400:#64748B;
  --slate-500:#778395;
  --card:rgba(255,255,255,.92);
  --border:rgba(15,23,42,.10);
  --shadow:0 24px 70px rgba(15,23,42,.10);
  background:#F8FAFC;
  color:#172033;
}
body.theme-light::before {
  background:
    radial-gradient(circle at 18% 8%, rgba(0,194,224,.18), transparent 31%),
    radial-gradient(circle at 80% 18%, rgba(33,194,139,.12), transparent 32%),
    linear-gradient(135deg, #FFFFFF 0%, #F4F8FB 52%, #EAF3FA 100%);
}
body.theme-light::after {
  opacity:.65;
  background-image:
    linear-gradient(rgba(0,96,128,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,96,128,.045) 1px, transparent 1px);
  mask-image:linear-gradient(to bottom, black, transparent 88%);
}
.theme-light .site-header {
  background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 34px rgba(15,23,42,.06);
}
.theme-light .nav-links a { color:#334155; }
.theme-light .nav-links a:hover,
.theme-light .nav-links a.active { color:#0284C7; }
.theme-light .hero-panel {
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,248,251,.92));
  border:1px solid rgba(15,23,42,.10);
}
.theme-light .section-soft {
  background:rgba(255,255,255,.52);
  border-top:1px solid rgba(15,23,42,.07);
  border-bottom:1px solid rgba(15,23,42,.07);
}
.theme-light .system-row,
.theme-light .value-item,
.theme-light .contact-card {
  background:rgba(255,255,255,.72);
  border:1px solid rgba(15,23,42,.08);
}
.theme-light .card,
.theme-light .about-card,
.theme-light .diff-card,
.theme-light .timeline-box,
.theme-light .contact-form,
.theme-light .product-card,
.theme-light . .trust-card {
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,23,42,.09);
}
.theme-light .product-card:hover,
.theme-light .card:hover {
  border-color:rgba(0,194,224,.36);
}
.theme-light .field input,
.theme-light .field select,
.theme-light .field textarea {
  background:#FFFFFF;
  color:#0F172A;
  border-color:rgba(15,23,42,.14);
}
.theme-light .field input::placeholder,
.theme-light .field textarea::placeholder { color:#94A3B8; }
.theme-light .btn-outline { background:rgba(0,194,224,.08); }
.theme-light footer {
  background:#07131F;
  border-top:1px solid rgba(0,194,224,.14);
  color:#E2E8F0;
}
.theme-light footer .footer-brand p,
.theme-light footer .footer-bottom,
.theme-light footer .footer-col h4 { color:#94A3B8; }
.theme-light footer .footer-col a { color:#CBD5E1; }
.theme-light footer .footer-col a:hover { color:#00C2E0; }
.theme-light footer .brand { min-width:240px; }

@media (max-width: 640px) {
  .brand-logo-header { height:44px; max-width:210px; }
  .brand-logo-footer { height:56px; max-width:260px; }
  .hero-logo-wrap img { width:min(320px, 100%); }
}



/* ─────────────────────────────────────────────
   Refinamento visual: fontes, logos e alternância de tema
   ───────────────────────────────────────────── */
body {
  font-family:'Manrope', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:16px;
  line-height:1.62;
  letter-spacing:.002em;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
h1, h2, h3, .section-title, .product-card h3, .panel-title, .brand-name {
  font-family:'Sora', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  letter-spacing:-.035em;
}
h1 {
  line-height:1.045;
  font-weight:800;
  max-width:940px;
}
.page-hero h1 { line-height:1.08; }
.section-title { line-height:1.12; font-weight:760; }
.hero-lead, .section-text, .lead, .card p, .about-card p, .diff-card p, .timeline-box p, .product-card p {
  font-weight:500;
}
.nav-links a, .btn, .eyebrow, .hero-badge, .product-kicker, .system-tag, .status-pill, .pill {
  font-family:'Manrope', system-ui, sans-serif;
  letter-spacing:.045em;
}
.product-card h3 { font-weight:750; }
.card h3, .about-card h3, .diff-card h3, .timeline-box h3 { font-weight:750; }

.navbar {
  justify-content:flex-start;
  gap:18px;
}
.navbar > .brand { margin-right:auto; }
.nav-links { margin-left:8px; }
.theme-toggle {
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(0,194,224,.24);
  background:rgba(0,194,224,.08);
  color:var(--slate-100);
  font-family:'Manrope', system-ui, sans-serif;
  font-size:.8rem;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
  transition:transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.theme-toggle:hover {
  transform:translateY(-1px);
  border-color:rgba(0,194,224,.52);
  background:rgba(0,194,224,.14);
}
.theme-toggle-icon { font-size:1rem; line-height:1; }
.theme-toggle-label { white-space:nowrap; }
.theme-light .theme-toggle {
  background:rgba(15,23,42,.045);
  color:#0F172A;
  border-color:rgba(15,23,42,.12);
  box-shadow:0 12px 26px rgba(15,23,42,.08);
}
.theme-light .theme-toggle:hover {
  background:rgba(0,194,224,.10);
  border-color:rgba(0,194,224,.35);
}

.logo-on-light { display:none !important; }
.logo-on-dark { display:block !important; }
.theme-light .logo-on-dark { display:none !important; }
.theme-light .logo-on-light { display:block !important; }
.theme-dark .logo-on-dark { display:block !important; }
.theme-dark .logo-on-light { display:none !important; }

.brand-logo-header {
  height:50px;
  max-width:260px;
  border-radius:12px;
}
.brand-logo-footer {
  height:72px;
  max-width:320px;
  border-radius:14px;
}
.footer-brand-link { min-width:260px; }
.hero-logo-wrap { margin-bottom:24px; }
.hero-logo-wrap img {
  width:min(520px, 100%);
  height:auto;
  border-radius:20px;
}
.theme-light .hero-logo-wrap img,
.theme-light .brand-logo-header {
  border-radius:0;
}
.system-logo img,
.product-logo-image img {
  object-fit:contain !important;
  padding:5px !important;
  background:transparent !important;
}
.system-row:nth-child(3) .system-logo,
#licitbrain-produto .product-logo-image {
  background:linear-gradient(135deg, rgba(7,24,45,.96), rgba(16,40,71,.9));
}
.theme-light .system-row:nth-child(3) .system-logo,
.theme-light #licitbrain-produto .product-logo-image {
  background:linear-gradient(135deg, #F8FAFC, #EAF3FA);
}
.theme-light .system-row:nth-child(3) .system-logo img,
.theme-light #licitbrain-produto .product-logo-image img {
  filter:none;
}

body.theme-dark { color:var(--slate-100); }
body.theme-light h1,
body.theme-light h2,
body.theme-light h3,
body.theme-light .section-title,
body.theme-light .panel-title,
body.theme-light .system-copy strong,
body.theme-light .trust-card strong,
body.theme-light .card h3,
body.theme-light .about-card h3,
body.theme-light .diff-card h3,
body.theme-light .timeline-box h3,
body.theme-light .contact-card strong,
body.theme-light .value-item strong {
  color:#0F172A;
}
body.theme-light .hero-lead,
body.theme-light .section-text,
body.theme-light .lead,
body.theme-light .system-copy span,
body.theme-light .card p,
body.theme-light .about-card p,
body.theme-light .diff-card p,
body.theme-light .timeline-box p,
body.theme-light .product-card p,
body.theme-light .value-item span {
  color:#526174;
}

@media (max-width: 980px) {
  .navbar { gap:12px; }
  .theme-toggle-label { display:none; }
  .theme-toggle { width:42px; padding:0; }
}
@media (max-width: 640px) {
  .brand-logo-header { height:42px; max-width:200px; }
  .brand-logo-footer { height:60px; max-width:270px; }
  .hero-logo-wrap img { width:min(340px, 100%); border-radius:14px; }
  .navbar .btn-primary { display:none; }
}

/* ─────────────────────────────────────────────
   Ajuste final: botão de tema à direita + tela cheia responsiva
   ───────────────────────────────────────────── */
html {
  width:100%;
  min-height:100%;
}
body {
  width:100%;
  min-width:320px;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
.site-header,
footer { flex:0 0 auto; }
main {
  flex:1 0 auto;
  width:100%;
  display:block;
}
.container {
  width:min(1440px, calc(100vw - clamp(32px, 6vw, 112px)));
  max-width:none;
}
.navbar {
  width:min(1440px, calc(100vw - clamp(32px, 6vw, 112px)));
  min-height:clamp(72px, 8vh, 92px);
  justify-content:flex-start;
  gap:clamp(12px, 1.6vw, 24px);
}
.navbar > .brand {
  order:1;
  margin-right:0;
  flex:0 0 auto;
}
.navbar > .nav-links {
  order:2;
  margin-left:auto;
}
.navbar > .btn-primary {
  order:3;
  flex:0 0 auto;
}
.navbar > .theme-toggle {
  order:4;
  margin-left:0;
  flex:0 0 auto;
}
.theme-toggle {
  min-height:44px;
  padding-inline:14px;
}
.hero {
  min-height:calc(100dvh - clamp(72px, 8vh, 92px));
  display:flex;
  align-items:center;
  padding:clamp(48px, 8vh, 112px) 0 clamp(48px, 7vh, 96px);
}
.page-hero {
  min-height:min(560px, calc(100dvh - clamp(72px, 8vh, 92px)));
  display:flex;
  align-items:center;
  padding:clamp(54px, 8vh, 104px) 0 clamp(46px, 7vh, 86px);
}
.hero > .container,
.page-hero > .container,
.section > .container {
  width:min(1440px, calc(100vw - clamp(32px, 6vw, 112px)));
}
.hero-layout {
  width:100%;
  grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr);
  gap:clamp(32px, 4.5vw, 72px);
}
.section {
  padding:clamp(64px, 8vh, 108px) 0;
}
.section-head {
  width:100%;
}
.grid-2,
.grid-3,
.products-grid,
.diff-grid,
.contact-layout {
  width:100%;
}
.hero-panel,
.card,
.product-card,
.diff-card,
.about-card,
.timeline-box,
.contact-form,
 .trust-card {
  max-width:100%;
}
footer {
  width:100%;
}

@media (min-width: 1600px) {
  .container,
  .navbar,
  .hero > .container,
  .page-hero > .container,
  .section > .container {
    width:min(1560px, calc(100vw - 128px));
  }
  h1 { font-size:clamp(4.2rem, 4.6vw, 6.4rem); }
  .section-title { font-size:clamp(2.65rem, 3vw, 3.9rem); }
}

@media (max-width: 1180px) {
  .container,
  .navbar,
  .hero > .container,
  .page-hero > .container,
  .section > .container {
    width:min(1180px, calc(100% - 48px));
  }
  .nav-links { gap:18px; }
  .nav-links a { font-size:.84rem; }
  .navbar > .btn-primary { padding-inline:16px; }
}

@media (max-width: 980px) {
  .navbar {
    width:min(980px, calc(100% - 36px));
  }
  .navbar > .nav-links { display:none; }
  .navbar > .brand { margin-right:auto; }
  .navbar > .theme-toggle { margin-left:0; }
  .hero {
    min-height:auto;
    padding:72px 0 60px;
  }
  .page-hero {
    min-height:auto;
    padding:72px 0 56px;
  }
  .hero-layout {
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px) {
  .container,
  .navbar,
  .hero > .container,
  .page-hero > .container,
  .section > .container {
    width:min(640px, calc(100% - 28px));
  }
  .navbar {
    min-height:68px;
    gap:10px;
  }
  .navbar > .btn-primary { display:none; }
  .theme-toggle {
    width:44px;
    min-width:44px;
    padding:0;
  }
  .hero { padding:56px 0 52px; }
  .page-hero { padding:56px 0 48px; }
  .section { padding:54px 0; }
}


/* ─────────────────────────────────────────────
   Ajuste: ocupar melhor a largura da tela + logos rápidos
   ───────────────────────────────────────────── */
:root {
  --page-gutter: clamp(18px, 3.2vw, 72px);
}
.container,
.navbar,
.hero > .container,
.page-hero > .container,
.section > .container {
  width: calc(100% - (var(--page-gutter) * 2)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.site-header .navbar {
  width: calc(100% - (var(--page-gutter) * 2)) !important;
}
.hero-layout {
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
  gap: clamp(32px, 5vw, 112px);
}
.hero-layout > div:first-child {
  max-width: none;
}
h1 {
  max-width: min(1080px, 100%);
}
.hero-lead {
  max-width: min(860px, 100%);
}
.hero-panel {
  justify-self: stretch;
  width: 100%;
}
.section-head,
.grid-2,
.grid-3,
.products-grid,
.diff-grid,
.contact-layout,
.footer-grid {
  width: 100%;
}
.system-logo,
.product-logo-image {
  overflow: hidden;
  background: linear-gradient(135deg, rgba(7,19,31,.98), rgba(16,40,71,.95));
  contain: layout paint style;
}
.system-logo img,
.product-logo-image img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  padding: 7px;
  border-radius: inherit;
  display: block;
  background: transparent !important;
  transform: translateZ(0);
}
.product-logo-image img { padding: 8px; }
.theme-light .system-logo,
.theme-light .product-logo-image {
  background: linear-gradient(135deg, #F8FAFC, #EAF3FA);
}
.theme-light .system-logo img,
.theme-light .product-logo-image img {
  filter: none;
}

@media (min-width: 1800px) {
  :root { --page-gutter: clamp(56px, 3.75vw, 96px); }
  .hero-layout {
    grid-template-columns: minmax(0, 1.1fr) minmax(520px, .9fr);
  }
  .hero-panel { max-width: 760px; justify-self: end; }
}

@media (max-width: 1180px) {
  :root { --page-gutter: 24px; }
  .hero-layout {
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
    gap: 36px;
  }
}

@media (max-width: 980px) {
  :root { --page-gutter: 18px; }
  .hero-layout { grid-template-columns: 1fr; }
  .hero-panel { max-width: none; justify-self: stretch; }
}

@media (max-width: 640px) {
  :root { --page-gutter: 14px; }
}

/* ─────────────────────────────────────────────
   Correção: indicadores da home centralizados dentro dos cards
   ───────────────────────────────────────────── */
.trust-row {
  width: 100%;
  max-width: 760px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.trust-card {
  min-height: 92px;
  padding: clamp(16px, 1.45vw, 24px) !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
}
.trust-card strong,
.trust-card small {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0;
}
.trust-card strong {
  font-size: clamp(1.45rem, 1.75vw, 2.05rem);
  line-height: 1.05;
  margin-bottom: 8px;
  letter-spacing: -0.035em;
}
.trust-card small {
  font-size: clamp(0.78rem, 0.92vw, 0.95rem);
  line-height: 1.25;
  color: var(--slate-400);
  font-weight: 800;
  overflow-wrap: normal;
  word-break: normal;
}

@media (min-width: 1280px) {
  .trust-row {
    max-width: 860px;
    gap: clamp(16px, 1.2vw, 24px);
  }
}

@media (max-width: 640px) {
  .trust-card {
    min-height: 82px;
  }
}


/* Links dinâmicos das aplicações */
a.system-row {
  color:inherit;
  text-decoration:none;
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}
a.system-row:hover {
  transform:translateY(-2px);
  border-color:rgba(0,194,224,.34);
  background:rgba(0,194,224,.075);
}
body.theme-light a.system-row:hover {
  background:rgba(0,194,224,.10);
  border-color:rgba(0,194,224,.28);
}
.product-card[data-link-env="teste"] .product-link::after,
a.system-row[data-link-env="teste"] .system-tag::after {
  content:' TESTE';
  display:inline-flex;
  margin-left:8px;
  padding:2px 6px;
  border-radius:999px;
  background:rgba(217,164,65,.15);
  color:#D9A441;
  border:1px solid rgba(217,164,65,.28);
  font-size:.66rem;
  letter-spacing:.08em;
}
