@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#080d17;--bg2:#0d1422;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--blue:#2563eb;--blue2:#60a5fa;--white:#fff;--light:#f8fafc}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:white;line-height:1.65}a{text-decoration:none}.site-header{position:sticky;top:0;z-index:50;background:rgba(8,13,23,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{max-width:1180px;margin:auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.brand{color:white;font-weight:800;font-size:21px;letter-spacing:-.6px}.brand span{color:var(--blue2)}.brand small{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#94a3b8;margin-left:6px}.nav-wrap nav{display:flex;align-items:center;gap:26px}.nav-wrap nav a{color:#cbd5e1;font-size:14px;font-weight:600}.nav-wrap nav a:hover{color:white}.nav-cta{border:1px solid #334155;padding:10px 15px;border-radius:8px}.hero{min-height:82vh;padding:120px 24px 90px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;background:radial-gradient(circle at 50% 20%,#172554 0,transparent 35%),linear-gradient(145deg,#080d17,#0d1422);color:white}.eyebrow,.page-hero>span,.section-head>span,.about-copy>span,.final-cta>span{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--blue2);margin-bottom:20px}.hero h1{font-size:clamp(45px,7vw,78px);max-width:970px;line-height:1.03;letter-spacing:-3px}.hero h1 span{color:var(--blue2)}.hero>p{max-width:800px;color:#cbd5e1;font-size:19px;margin:28px auto}.actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.btn{display:inline-block;background:var(--blue);color:white;padding:14px 22px;border-radius:8px;font-weight:700;font-size:14px;transition:.2s}.btn:hover{transform:translateY(-2px);background:#1d4ed8}.btn.secondary{background:transparent;border:1px solid #475569}.capabilities{margin-top:55px;color:#94a3b8;font-size:13px;font-weight:600;letter-spacing:.5px}.capabilities i{color:#334155;margin:0 8px}.section{max-width:1180px;margin:auto;padding:95px 24px}.section-head{text-align:center;max-width:760px;margin:0 auto 55px}.section-head h2,.about-copy h2{font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:-1.8px}.section-head p{color:var(--muted);margin-top:16px;font-size:17px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{padding:28px;border:1px solid var(--line);border-radius:14px;min-height:225px;background:white}.card b,.steps b,.service-list>div>b,.principles b{font-size:12px;color:var(--blue);letter-spacing:1px}.card h3{margin:25px 0 10px;font-size:19px}.card p{color:var(--muted);font-size:14px}.accent-card{background:#eff6ff;border-color:#bfdbfe}.problem{background:var(--bg);color:white;padding:90px max(24px,calc((100vw - 1132px)/2));display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.problem span{color:var(--blue2);font-size:12px;font-weight:800;letter-spacing:2px}.problem h2{font-size:43px;line-height:1.1;margin:15px 0}.problem p{color:#94a3b8;margin-bottom:25px}.terminal{background:#050810;border:1px solid #1e293b;border-radius:14px;padding:24px;box-shadow:0 25px 70px rgba(0,0,0,.3)}.dots{color:#475569;border-bottom:1px solid #1e293b;padding-bottom:14px;margin-bottom:20px}.terminal code{color:#cbd5e1;white-space:normal}.terminal em{color:#60a5fa;font-style:normal}.terminal strong{color:#86efac}.alt{max-width:none;background:var(--light);padding-left:max(24px,calc((100vw - 1132px)/2));padding-right:max(24px,calc((100vw - 1132px)/2))}.objective-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}.objective-grid p{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.objective-grid small{display:block;color:var(--blue);margin-top:7px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.steps>div{border-top:2px solid var(--line);padding:22px 12px}.steps h3{margin:12px 0 5px}.steps p{color:var(--muted);font-size:13px}.lab{background:var(--bg);padding:95px max(24px,calc((100vw - 1132px)/2));color:white}.section-head.light p{color:#94a3b8}.grid.three{grid-template-columns:repeat(3,1fr)}.lab-card{padding:32px;border:1px solid #1e293b;background:#0b1220;border-radius:14px}.lab-card small{color:var(--blue2);font-weight:700}.lab-card h3{font-size:26px;margin:28px 0 10px}.lab-card p{color:#94a3b8;min-height:75px}.lab-card span{font-size:13px;color:#cbd5e1}.final-cta{text-align:center;padding:100px 24px;background:#eff6ff}.final-cta h2{font-size:clamp(34px,5vw,55px);max-width:800px;margin:10px auto}.final-cta p{color:var(--muted);margin:15px auto 25px}.site-footer{background:#050810;color:#94a3b8;padding:45px max(24px,calc((100vw - 1132px)/2));display:flex;justify-content:space-between;gap:30px;font-size:13px}.site-footer strong{color:white;font-size:18px}.page-hero{padding:105px 24px 80px;text-align:center;background:var(--bg);color:white}.page-hero h1{font-size:clamp(40px,6vw,64px);max-width:900px;margin:auto;line-height:1.08;letter-spacing:-2.5px}.page-hero p{color:#94a3b8;max-width:720px;margin:22px auto;font-size:17px}.service-list{border-top:1px solid var(--line)}.service-list>div{display:grid;grid-template-columns:60px 280px 1fr;gap:25px;padding:38px 10px;border-bottom:1px solid var(--line);align-items:start}.service-list h2{font-size:22px}.service-list p{color:#475569}.service-list small{grid-column:3;color:#64748b}.service-special{background:#eff6ff;padding:38px!important;border-radius:12px;margin-top:25px}.service-special .btn{grid-column:3;width:max-content}.fineprint{color:#94a3b8;font-size:11px;margin-top:25px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-copy p{color:#475569;margin-top:20px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:12px}.principles>div{border:1px solid var(--line);border-radius:12px;padding:24px}.principles h3{font-size:17px;margin:18px 0 8px}.principles p{color:var(--muted);font-size:13px}.manifesto{text-align:center;background:#eff6ff;padding:90px 24px}.manifesto p{font-size:clamp(27px,4vw,43px);font-weight:800;line-height:1.2;max-width:900px;margin:0 auto 30px;letter-spacing:-1.5px}
@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}.problem,.about{grid-template-columns:1fr}.objective-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:1fr}.service-list>div{grid-template-columns:40px 1fr}.service-list p,.service-list small,.service-special .btn{grid-column:2}.nav-wrap{align-items:flex-start}.nav-wrap nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.nav-wrap nav a{font-size:12px}.nav-cta{display:none}}
@media(max-width:560px){.brand small{display:none}.nav-wrap{padding:14px 16px}.nav-wrap nav{gap:11px}.hero{padding-top:90px}.hero h1{letter-spacing:-2px}.grid,.objective-grid,.principles{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.problem{gap:40px}.problem h2{font-size:34px}.site-footer{flex-direction:column}.service-list>div{grid-template-columns:1fr}.service-list p,.service-list small,.service-special .btn{grid-column:1}.service-list>div>b{margin-bottom:-15px}}
/* Sprint v1.1 — mais presença visual + contato responsivo */
.hero{position:relative;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;border-radius:999px;filter:blur(10px);pointer-events:none}.hero:before{width:430px;height:430px;background:rgba(37,99,235,.16);top:-150px;left:-130px}.hero:after{width:380px;height:380px;background:rgba(96,165,250,.09);right:-120px;bottom:-130px}.hero>*{position:relative;z-index:1}.hero .eyebrow{padding:7px 12px;border:1px solid rgba(96,165,250,.25);border-radius:999px;background:rgba(37,99,235,.08)}.hero-proof{width:min(900px,100%);margin-top:48px;padding-top:25px;border-top:1px solid rgba(255,255,255,.10);display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font-size:14px;color:#f8fafc}.hero-proof small{font-size:12px;color:#64748b;margin-top:3px}.card,.lab-card,.principles>div{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.card:hover{transform:translateY(-5px);border-color:#bfdbfe;box-shadow:0 18px 45px rgba(15,23,42,.08)}.lab-card:hover{transform:translateY(-5px);border-color:#334155}.contact-hero{padding:90px 24px 70px;text-align:center;background:radial-gradient(circle at 50% 0,#172554 0,transparent 42%),var(--bg);color:#fff}.contact-hero>span,.contact-kicker{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--blue2)}.contact-hero h1{font-size:clamp(40px,6vw,68px);line-height:1.05;letter-spacing:-2.5px;margin:15px auto;max-width:900px}.contact-hero h1 em{font-style:normal;color:var(--blue2)}.contact-hero p{max-width:680px;margin:22px auto 0;color:#94a3b8;font-size:17px}.contact-section{padding:70px 24px 100px;background:#f8fafc}.contact-panel{max-width:1080px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:start}.contact-info{padding:28px 0}.contact-info h2{font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:-1.5px;margin:15px 0}.contact-info>p{color:#64748b;font-size:16px}.contact-points{margin-top:34px;display:grid;gap:16px}.contact-points>div{display:flex;gap:16px;align-items:flex-start}.contact-points b{width:34px;height:34px;border-radius:8px;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:11px;flex:0 0 auto}.contact-points p{display:flex;flex-direction:column}.contact-points strong{font-size:14px}.contact-points small{color:#64748b}.direct-contact{margin-top:35px;padding-top:24px;border-top:1px solid #e2e8f0;display:flex;flex-direction:column}.direct-contact small{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#64748b}.direct-contact a{color:#1d4ed8;font-weight:700;margin-top:5px}.contact-form{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:34px;box-shadow:0 20px 60px rgba(15,23,42,.08)}.form-title{margin-bottom:25px}.form-title small{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#2563eb}.form-title h3{font-size:26px;margin-top:5px}.form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.form-group label{font-size:13px;font-weight:700;color:#334155}.form-group input,.form-group textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:13px 14px;font:inherit;font-size:14px;color:#0f172a;background:#fff;outline:none;transition:.2s}.form-group textarea{resize:vertical;min-height:145px}.form-group input:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.10)}.contact-submit{border:0;width:100%;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font:inherit}.form-note{font-size:11px;color:#94a3b8;text-align:center;margin-top:12px}.alert{padding:12px 14px;border-radius:8px;font-size:13px;margin-bottom:18px}.alert.success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.alert.error{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}
@media(max-width:760px){.hero-proof{grid-template-columns:1fr;margin-top:36px;gap:12px}.hero-proof div{padding:8px 0}.contact-hero{padding:70px 20px 55px}.contact-panel{grid-template-columns:1fr;gap:25px}.contact-section{padding:35px 16px 70px}.contact-info{padding:10px 5px}.contact-form{padding:24px 18px;border-radius:14px}.contact-hero h1{letter-spacing:-1.8px}.contact-hero p{font-size:15px}}

/* Sprint v1.2 — orçamento em modal */
body.modal-open{overflow:hidden}.quote-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.quote-modal.is-open{opacity:1;visibility:visible}.quote-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.82);backdrop-filter:blur(10px)}.quote-dialog{position:relative;z-index:1;width:min(920px,100%);max-height:calc(100dvh - 40px);overflow:auto;display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;border:1px solid rgba(148,163,184,.25);border-radius:22px;box-shadow:0 35px 100px rgba(0,0,0,.5);transform:translateY(14px) scale(.985);transition:transform .22s ease}.quote-modal.is-open .quote-dialog{transform:none}.quote-close{position:absolute;right:15px;top:12px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:#eef2ff;color:#0f172a;font-size:27px;line-height:1;cursor:pointer}.quote-intro{padding:48px 38px;background:radial-gradient(circle at 20% 0,#172554 0,transparent 45%),#080d17;color:#fff}.quote-intro>span{font-size:10px;font-weight:800;letter-spacing:2px;color:#60a5fa}.quote-intro h2{font-size:36px;line-height:1.08;letter-spacing:-1.5px;margin:15px 0}.quote-intro h2 em{font-style:normal;color:#60a5fa}.quote-intro p{color:#94a3b8;font-size:14px}.quote-steps{display:grid;gap:10px;margin-top:35px;padding-top:25px;border-top:1px solid #1e293b}.quote-steps small{color:#cbd5e1}.quote-steps b{color:#60a5fa;margin-right:9px}.quote-form{padding:45px 38px 30px;display:flex;flex-direction:column;gap:16px}.quote-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#334155}.quote-form input,.quote-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:12px 13px;font:inherit;font-size:14px;outline:none;resize:vertical}.quote-form input:focus,.quote-form textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.1)}.quote-submit{border:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font:inherit;margin-top:2px}.quote-privacy{text-align:center;color:#94a3b8;font-size:10px}
@media(max-width:700px){.quote-modal{padding:12px}.quote-dialog{display:block;max-height:calc(100dvh - 24px);border-radius:17px}.quote-intro{padding:30px 22px 24px}.quote-intro h2{font-size:27px;padding-right:25px}.quote-intro p{font-size:13px}.quote-steps{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:20px;padding-top:18px}.quote-form{padding:24px 20px 22px;gap:13px}.quote-form textarea{min-height:105px}.quote-close{position:fixed;right:22px;top:20px;background:rgba(255,255,255,.92)}}
