:root { --navy:#092f4a; --blue:#0d5c82; --ink:#092840; --muted:#5d7285; --line:#d9e3e8; --paper:#f6f8f7; --aqua:#45c4bc; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"DM Sans",Arial,sans-serif; font-size:16px; line-height:1.55; }
img { display:block; max-width:100%; }
a { color:inherit; }.skip-link { position:absolute; left:-10000px; top:auto; }.skip-link:focus { left:1rem; top:1rem; z-index:10; padding:.6rem 1rem; background:#fff; }
.site-header { min-height:74px; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:13px clamp(1.25rem,5vw,6rem); background:#fff; border-bottom:1px solid var(--line); }.brand img { width:160px; max-height:42px; object-fit:contain; object-position:left center; }nav { display:flex; gap:1.7rem; font-size:.9rem; font-weight:600; color:#436174; }nav a { text-decoration:none; }nav a:hover { color:var(--blue); }
.header-cta,.button { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; text-decoration:none; font-weight:700; border-radius:4px; transition:background .2s,transform .2s; }.header-cta { padding:.62rem .95rem; color:var(--blue); border:1px solid #b7d1df; font-size:.86rem; }.button { padding:.9rem 1.15rem; }.button:hover,.header-cta:hover { transform:translateY(-1px); }.button-primary { background:#136ea0; color:#fff; }.button-primary:hover { background:#0a557e; }
.hero { display:grid; grid-template-columns:minmax(290px,.9fr) minmax(460px,1.3fr); gap:clamp(2.5rem,5vw,6rem); padding:clamp(4rem,8vw,7rem) clamp(1.25rem,9vw,10rem); background:#fff; align-items:center; }.hero-copy { max-width:570px; }.eyebrow { margin:0 0 .85rem; color:var(--aqua); font-size:.73rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.eyebrow-dark { color:#14736f; }.eyebrow-light { color:#8bdcd4; }h1,h2,h3 { font-family:Manrope,"DM Sans",sans-serif; letter-spacing:-.035em; line-height:1.08; margin:0; }h1 { font-size:clamp(2.55rem,5vw,5rem); }h1 em { color:#146f98; font-style:normal; }h2 { font-size:clamp(1.75rem,3.2vw,3rem); max-width:750px; }h3 { font-size:1.08rem; }.hero-text { color:#466275; font-size:clamp(1.05rem,1.4vw,1.26rem); max-width:590px; margin:1.4rem 0 1.75rem; }.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }.text-link { color:#13668e; font-size:.93rem; font-weight:700; text-decoration:underline; text-underline-offset:4px; }.microcopy { color:#6f8290; font-size:.82rem; margin-top:1.2rem; }.hero-proof { position:relative; margin:0; padding:1.35rem 0 2.4rem; }.hero-mascot { position:absolute; z-index:2; width:clamp(150px,16vw,232px); left:clamp(-7.5rem,-7vw,-3.25rem); bottom:-.55rem; filter:drop-shadow(0 17px 16px rgba(5,47,74,.19)); pointer-events:none; }.proof-window { position:relative; z-index:1; overflow:hidden; border:1px solid #c5d3dc; box-shadow:0 16px 34px rgba(5,47,74,.13); }.proof-window img { width:100%; }.hero-proof figcaption,.product-proof figcaption { color:#6d7f8a; font-size:.76rem; margin-top:.7rem; }
.pain,.proof-section,.agenda-proof,.steps,.faq { max-width:1280px; margin:0 auto; padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5vw,3rem); }.pain { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,7vw,7rem); background:#eef4f3; max-width:none; padding-left:clamp(1.25rem,9vw,10rem); padding-right:clamp(1.25rem,9vw,10rem); }.pain ul { list-style:none; margin:0; padding:0; border-top:1px solid #bfd0d0; }.pain li { display:grid; grid-template-columns:190px 1fr; gap:1rem; padding:1.2rem 0; border-bottom:1px solid #bfd0d0; }.pain strong { font-family:Manrope,sans-serif; }.pain span { color:var(--muted); }.proof-section { display:grid; grid-template-columns:.75fr 1.25fr; align-items:center; gap:clamp(2rem,6vw,6rem); background:#fff; max-width:none; padding-left:clamp(1.25rem,9vw,10rem); padding-right:clamp(1.25rem,9vw,10rem); }.section-intro>p:not(.eyebrow) { color:var(--muted); max-width:590px; margin:1rem 0 0; }.product-proof { margin:0; border:1px solid var(--line); background:#fff; padding:.5rem; box-shadow:0 12px 28px rgba(15,53,73,.09); }.product-proof img { width:100%; }
.operations { background:var(--navy); color:#fff; padding:clamp(4rem,7vw,7rem) clamp(1.25rem,9vw,10rem); }.operation-list { display:grid; grid-template-columns:repeat(3,1fr); gap:0; max-width:1280px; margin:3.2rem auto 0; border-top:1px solid rgba(255,255,255,.25); border-bottom:1px solid rgba(255,255,255,.25); }.operation-list article { padding:1.6rem 2rem 1.9rem 0; margin-right:2rem; border-right:1px solid rgba(255,255,255,.25); }.operation-list article:last-child { border:0; margin:0; }.operation-list span { color:#86ded6; font-size:.77rem; font-weight:800; letter-spacing:.1em; }.operation-list h3 { margin:.65rem 0; }.operation-list p { color:#c1d4de; margin:0; }.integration-note { max-width:1280px; margin:2rem auto 0; color:#a4c6d4; font-size:.92rem; }.agenda-proof { display:grid; grid-template-columns:1.13fr .87fr; gap:clamp(2rem,6vw,6rem); align-items:center; }.dark-link { display:inline-block; margin-top:1.4rem; }
.steps { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,6vw,6rem); border-top:1px solid var(--line); }.steps ol { list-style:none; padding:0; margin:0; }.steps li { display:grid; grid-template-columns:42px 1fr; gap:1rem; padding:0 0 1.3rem; margin-bottom:1.3rem; border-bottom:1px solid var(--line); }.steps li:last-child { border-bottom:0; }.steps li>span { color:#13708d; font-family:Manrope,sans-serif; font-weight:800; }.steps h3 { margin:0 0 .25rem; }.steps p { color:var(--muted); margin:0; }.faq { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(2rem,6vw,6rem); background:#fff; max-width:none; padding-left:clamp(1.25rem,9vw,10rem); padding-right:clamp(1.25rem,9vw,10rem); }.faq-list { border-top:1px solid var(--line); }.faq details { border-bottom:1px solid var(--line); padding:1rem 0; }.faq summary { cursor:pointer; font-family:Manrope,sans-serif; font-weight:700; }.faq details p { color:var(--muted); margin:.8rem 1.5rem .1rem 0; }
.closing { display:grid; grid-template-columns:minmax(0,.95fr) minmax(320px,.72fr); align-items:start; gap:clamp(2rem,6vw,6rem); padding:clamp(3rem,6vw,5rem) clamp(1.25rem,9vw,10rem); background:#0e5c7b; color:#fff; }.closing h2 { max-width:670px; }.closing p:not(.eyebrow) { max-width:620px; color:#d0e4eb; }.button-light { flex:0 0 auto; background:#fff; color:#0d5978; }.demo-form { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; padding:1.35rem; background:#fff; color:var(--ink); border-radius:6px; }.demo-form label { display:grid; gap:.35rem; color:#415a6d; font-size:.75rem; font-weight:700; }.demo-form input,.demo-form select { min-height:42px; width:100%; border:1px solid #bed0d9; border-radius:3px; padding:.65rem .7rem; font:inherit; color:var(--ink); background:#fff; }.demo-form .full-field,.demo-form .consent,.demo-form button,.demo-form .form-note { grid-column:1/-1; }.demo-form .consent { grid-template-columns:17px 1fr; align-items:start; gap:.55rem; font-size:.72rem; font-weight:500; }.demo-form .consent input { min-height:auto; width:16px; margin:.14rem 0 0; }.demo-form button { width:100%; border:0; cursor:pointer; }.form-note { margin:0; color:#647988!important; font-size:.7rem; }footer { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.8rem clamp(1.25rem,9vw,10rem); background:#fff; color:#617487; font-size:.82rem; border-top:1px solid var(--line); }footer img { width:132px; max-height:35px; object-fit:contain; object-position:left; }footer p { margin:0; }
@media (max-width:850px) { nav { display:none; }.hero,.pain,.proof-section,.agenda-proof,.steps,.faq,.closing { grid-template-columns:1fr; }.hero { padding-top:3rem; }.hero-proof { order:2; width:min(100%,680px); justify-self:center; padding-bottom:3.25rem; }.hero-mascot { width:155px; left:auto; right:.5rem; bottom:-.25rem; }.pain li { grid-template-columns:1fr; gap:.3rem; }.operation-list { grid-template-columns:1fr; }.operation-list article { margin:0; padding:1.4rem 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.25); }.operation-list article:last-child { border-bottom:0; }.agenda-proof .product-proof { order:2; }.closing,footer { align-items:flex-start; flex-direction:column; }.closing { gap:1.7rem; } }
@media (max-width:480px) { .site-header { padding:12px 1rem; }.brand img { width:138px; }.header-cta { padding:.55rem .6rem; font-size:.72rem; }.hero-actions { align-items:stretch; flex-direction:column; }.button { width:100%; }.text-link { text-align:center; }.hero-proof { padding-bottom:2.45rem; }.hero-mascot { width:105px; right:.15rem; }.product-proof { padding:.25rem; }.demo-form { grid-template-columns:1fr; padding:1rem; } }

:focus-visible { outline:3px solid #0b7a9b; outline-offset:3px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }
/* Campo antirobô: acessível a leitores de tela, invisível para a pessoa. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

 
 /* System Tour Section */
 .system-tour { max-width:1280px; margin:0 auto; padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5vw,3rem); background:#fff; }
 .tour-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:2rem; margin-top:3rem; }
 .tour-card { background:#f8fafb; border:1px solid var(--line); border-radius:8px; overflow:hidden; transition:transform .2s,box-shadow .2s; }
 .tour-card:hover { transform:translateY(-4px); box-shadow:0 12px 24px rgba(9,47,74,.08); }
 .tour-card img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-bottom:1px solid var(--line); }
 .tour-card h3 { margin:1.2rem 1.5rem .5rem; font-size:1.15rem; color:var(--ink); }
 .tour-card p { margin:0 1.5rem 1.5rem; color:var(--muted); font-size:.92rem; line-height:1.5; }
 .tour-cta { text-align:center; margin-top:3rem; }
 @media (max-width:850px) { .tour-grid { grid-template-columns:1fr 1fr; } }
 @media (max-width:480px) { .tour-grid { grid-template-columns:1fr; } }

/* --- Blocos de público: cliente final e arquiteto ---------------------- */
.audience { display:grid; grid-template-columns:1fr .85fr; gap:clamp(2rem,6vw,6rem); align-items:center; max-width:1280px; margin:0 auto; padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5vw,3rem); }
.audience-alt { background:#eef4f3; max-width:none; padding-left:clamp(1.25rem,5vw,10rem); padding-right:clamp(1.25rem,5vw,10rem); }
.audience-copy { max-width:560px; }
.audience-copy h2 { margin-bottom:1.1rem; }
.audience-copy p { color:var(--muted); margin:0 0 1rem; }
.audience-list { list-style:none; margin:1.6rem 0; padding:0; display:grid; gap:.9rem; }
.audience-list li { padding-left:1.6rem; position:relative; }
.audience-list li::before { content:""; position:absolute; left:0; top:.55rem; width:.7rem; height:.7rem; border-radius:50%; background:var(--aqua); }
.audience-list strong { display:block; color:var(--ink); font-size:1rem; }
.audience-list span { color:var(--muted); font-size:.92rem; }
.audience-result { border-left:3px solid var(--aqua); padding-left:1rem; color:var(--ink); font-weight:600; }
.audience-actions { margin-top:1.6rem; }
.audience-visual { display:flex; justify-content:center; }

.phone-frame { width:min(300px,100%); background:#fff; border:1px solid var(--line); border-radius:26px; box-shadow:0 20px 44px rgba(9,47,74,.14); overflow:hidden; }
.phone-topbar { display:flex; gap:.35rem; padding:.7rem .9rem; background:#f2f6f7; border-bottom:1px solid var(--line); }
.phone-dot { width:.5rem; height:.5rem; border-radius:50%; background:#c8d6dd; }
.phone-body { padding:1.4rem 1.2rem 1.6rem; }
.phone-kicker { margin:0; font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); font-weight:700; }
.phone-title { margin:.3rem 0 1.2rem; font-family:Manrope,"DM Sans",sans-serif; font-size:1.25rem; font-weight:800; letter-spacing:-.02em; }
.phone-steps { list-style:none; margin:0; padding:0; display:grid; gap:.85rem; }
.phone-steps li { display:flex; align-items:center; gap:.7rem; font-size:.92rem; color:#8c9ba6; }
.phone-steps .is-done { color:var(--ink); }
.phone-steps .is-current { color:var(--blue); font-weight:700; }
.phone-step-dot { width:1.5rem; height:1.5rem; flex:0 0 1.5rem; border-radius:50%; display:grid; place-items:center; font-size:.8rem; background:#eef2f4; color:#a9b7c0; }
.phone-steps .is-done .phone-step-dot { background:#e2f5f2; color:#14736f; }
.phone-steps .is-current .phone-step-dot { background:var(--navy); color:#fff; }
.phone-note { margin:1.4rem 0 0; font-size:.78rem; color:#8c9ba6; }

.portal-frame { width:min(340px,100%); background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:0 18px 38px rgba(9,47,74,.12); padding:1.5rem 1.35rem; }
.portal-kicker { margin:0; font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); font-weight:700; }
.portal-title { margin:.3rem 0 1.2rem; font-family:Manrope,"DM Sans",sans-serif; font-size:1.2rem; font-weight:800; letter-spacing:-.02em; }
.portal-list { list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
.portal-list li { display:flex; justify-content:space-between; align-items:center; gap:.8rem; padding:.7rem .8rem; border:1px solid var(--line); border-radius:6px; font-size:.86rem; }
.portal-ref { font-weight:700; color:var(--ink); }
.portal-stage { color:var(--muted); text-align:right; }
.portal-stage.is-ok { color:#14736f; font-weight:600; }
.portal-stage.is-warn { color:#9a5b12; font-weight:600; }
.portal-note { margin:1.1rem 0 0; font-size:.78rem; color:#8c9ba6; }

@media (max-width:850px) { .audience { grid-template-columns:1fr; }.audience-alt { padding-left:1.25rem; padding-right:1.25rem; } }

.field-note { display:block; margin-top:.4rem; color:var(--muted); font-size:.76rem; }
