:root {
  --navy:#082f5b; --blue:#0b477f; --gold:#d8a63a; --ink:#132333;
  --muted:#607080; --paper:#f4f7fa; --line:#dce4eb; --white:#fff;
  --container:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);font-family:"Manrope",sans-serif;background:#fff;line-height:1.6}
img{display:block;max-width:100%} a{color:inherit}.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:16px;top:16px;z-index:99;background:#fff;padding:12px 16px}
.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,47,91,.09)}
.nav-wrap{height:96px;display:flex;align-items:center;justify-content:space-between}.brand img{width:265px;height:76px;object-fit:contain}.topbar nav{display:flex;align-items:center;gap:30px}.topbar nav a{text-decoration:none;font-size:.92rem;font-weight:700}.topbar nav a:hover{color:var(--blue)}
.nav-cta{background:var(--navy);color:#fff!important;padding:12px 18px;border-radius:3px}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;padding:10px 13px;font:700 .9rem Manrope}
.eyebrow{display:inline-block;color:var(--blue);font-weight:800;font-size:.74rem;letter-spacing:.14em}.gold{color:var(--gold)}
.hero{background:var(--navy);color:#fff;overflow:hidden}.hero-grid{min-height:720px;display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center;padding:70px 0}.hero-copy h1,.section h2,.public-section h2,.portfolio h2,.contact h2,.authority h2,.compliance h2{font-family:"Space Grotesk",sans-serif;line-height:1.08;letter-spacing:-.035em;margin:20px 0}.hero-copy h1{font-size:clamp(3rem,5.7vw,5.4rem);max-width:760px}.hero-copy>p{font-size:1.12rem;color:#d6e2ee;max-width:700px}
.hero-actions{display:flex;gap:14px;margin:34px 0}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;padding:15px 20px;border-radius:3px}.primary{background:var(--gold);color:#102337}.secondary{border:1px solid #7d9ab8;color:#fff}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}.hero-proof div{border-top:1px solid #41658a;padding-top:15px}.hero-proof strong{display:block;color:var(--gold);font:700 2rem "Space Grotesk"}.hero-proof span{font-size:.8rem;color:#c6d4e2}
.hero-visual{position:relative}.hero-visual:before{content:"";position:absolute;inset:-28px 34px 34px -28px;border:1px solid #37638f}.hero-visual img{position:relative;aspect-ratio:1/1;object-fit:cover;box-shadow:0 30px 70px rgba(0,0,0,.25)}.engineering-stamp{position:absolute;right:-18px;bottom:-26px;background:#fff;color:var(--navy);padding:18px 22px;border-left:5px solid var(--gold)}.engineering-stamp span{font-size:.65rem;font-weight:800;letter-spacing:.12em}.engineering-stamp strong{display:block;font-size:.93rem;margin-top:4px}
.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-strip .container{display:flex;align-items:center;gap:35px;padding:22px 0}.trust-strip span{color:var(--muted);font-size:.75rem;font-weight:700;white-space:nowrap}.logos-text{display:flex;align-items:center;gap:18px;color:#29445e;font:700 .82rem "Space Grotesk";letter-spacing:.08em;flex-wrap:wrap}.logos-text i{width:3px;height:3px;background:var(--gold);border-radius:50%}
.section{padding:105px 0}.section-head{max-width:820px}.section h2,.public-section h2,.portfolio h2,.authority h2,.compliance h2,.contact h2{font-size:clamp(2.3rem,4vw,4rem)}.section-head>p{color:var(--muted);font-size:1.05rem;max-width:700px}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:55px}.solution-card{background:#fff;padding:38px;min-height:340px;display:flex;flex-direction:column}.solution-card.public-card{background:var(--navy);color:#fff}.card-index{color:var(--gold);font-weight:800;font-size:.8rem}.solution-card h3{font:700 1.55rem "Space Grotesk";margin:22px 0 14px}.solution-card p{color:var(--muted);margin:0}.public-card p{color:#d1ddeb}.solution-card a{margin-top:auto;padding-top:25px;font-weight:800;color:var(--blue);text-decoration:none}.public-card a{color:var(--gold)}
.public-section{background:linear-gradient(135deg,#082f5b 0%,#092744 100%);color:#fff;padding:110px 0}.public-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:75px;align-items:center}.public-copy>p{color:#d1ddea;font-size:1.05rem;max-width:670px}.check-list{list-style:none;padding:0;margin:34px 0 0}.check-list li{position:relative;padding:13px 0 13px 34px;border-bottom:1px solid #315373}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:800}.bid-panel{background:#fff;color:var(--ink);padding:38px;box-shadow:0 28px 60px rgba(0,0,0,.22)}.panel-tag{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.14em}.bid-panel h3{font:700 2rem "Space Grotesk";line-height:1.15}.doc-row{display:flex;gap:16px;padding:17px 0;border-top:1px solid var(--line)}.doc-row>span{color:var(--gold);font-weight:800}.doc-row strong,.doc-row small{display:block}.doc-row small{color:var(--muted);margin-top:4px}.panel-note{background:var(--paper);padding:15px;font-size:.78rem;color:var(--muted);margin:20px 0 0}
.method{background:var(--paper)}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;border-top:2px solid #cbd7e2}.process-item{padding:0 30px 0 0}.process-item span{display:grid;place-items:center;width:48px;height:48px;margin-top:-25px;background:var(--navy);color:#fff;border-radius:50%;font-weight:800}.process-item:last-child span{background:var(--gold);color:var(--navy)}.process-item h3{font:700 1.35rem "Space Grotesk";margin:26px 0 8px}.process-item p{color:var(--muted);font-size:.94rem}
.portfolio{padding:0;background:#fff}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;min-height:690px}.portfolio-image{margin-left:calc((100vw - min(var(--container),calc(100vw - 40px)))/-2)}.portfolio-image img{width:100%;height:100%;object-fit:cover}.portfolio-copy{padding:90px 0 80px 70px;align-self:center}.discipline-list{margin-top:35px}.discipline-list div{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.discipline-list span{color:var(--gold);font-weight:800}.discipline-list strong{font-size:.98rem}
.authority{background:#fff}.authority-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px}.authority-copy p{color:var(--muted);font-size:1.05rem}.authority-stats{border-left:1px solid var(--line);padding-left:48px}.authority-stats div{padding:18px 0;border-bottom:1px solid var(--line)}.authority-stats strong{display:block;color:var(--blue);font:700 2.3rem "Space Grotesk"}.authority-stats span{color:var(--muted);font-size:.9rem}
.compliance{background:var(--paper);padding:100px 0}.compliance-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.compliance-list{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#fff}.compliance-list div{padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.compliance-list span{font-weight:800;color:var(--blue)}.compliance-list p{color:var(--muted);font-size:.9rem;margin:8px 0 0}
.contact{background:var(--navy);color:#fff;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.contact-copy p{color:#d4e0ec;font-size:1.05rem;max-width:640px}.contact-lines{display:flex;gap:25px;flex-wrap:wrap;margin-top:30px}.contact-lines a{color:#fff;font-weight:700}.contact-action{background:var(--gold);color:#102337;padding:35px;text-decoration:none;border-radius:3px}.contact-action span,.contact-action small{display:block}.contact-action span{font-size:.75rem;font-weight:800;letter-spacing:.11em}.contact-action strong{display:block;font:700 1.55rem "Space Grotesk";margin:12px 0}.contact-action small{font-size:.85rem}
.footer{background:#061d37;color:#d5e0eb;padding:38px 0}.footer-grid{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:35px}.footer img{width:200px;height:62px;object-fit:contain;background:#fff}.footer p{font-size:.9rem}.footer div div{display:flex;flex-direction:column;align-items:flex-end;font-size:.78rem;gap:6px}.footer a{color:var(--gold);font-weight:700}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media (max-width:900px){.menu-toggle{display:block}.topbar nav{display:none;position:absolute;top:96px;left:0;right:0;background:#fff;padding:25px;box-shadow:0 18px 40px rgba(0,0,0,.12);flex-direction:column;align-items:stretch}.topbar nav.open{display:flex}.hero-grid,.public-grid,.portfolio-grid,.authority-grid,.compliance-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:55px 0 85px}.hero-copy h1{font-size:3.5rem}.hero-visual{max-width:650px}.trust-strip .container{align-items:flex-start;flex-direction:column;gap:12px}.solution-grid{grid-template-columns:1fr}.process{grid-template-columns:1fr;border-top:0;border-left:2px solid #cbd7e2;margin-left:22px}.process-item{padding:0 0 35px 38px}.process-item span{margin:0 0 0 -63px}.portfolio-image{margin:0}.portfolio-copy{padding:65px 0}.authority-stats{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.compliance-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer div div{align-items:flex-start}}
@media (max-width:560px){.container{width:min(100% - 28px,var(--container))}.nav-wrap{height:82px}.brand img{width:205px;height:60px}.topbar nav{top:82px}.hero-copy h1{font-size:2.65rem}.hero-proof{grid-template-columns:1fr}.hero-proof div{display:grid;grid-template-columns:90px 1fr;align-items:center}.hero-actions{flex-direction:column}.button{width:100%}.section,.public-section,.compliance,.contact{padding:75px 0}.section h2,.public-section h2,.portfolio h2,.authority h2,.compliance h2,.contact h2{font-size:2.35rem}.bid-panel{padding:28px}.process-item{padding-right:0}.portfolio-copy{padding:55px 0}.compliance-list{grid-template-columns:1fr}.footer img{width:180px}.engineering-stamp{right:0}.contact-lines{flex-direction:column;gap:8px}}

/* Catálogo, registros reais e prova social */
.hero-actions{flex-wrap:wrap}.portfolio-button{background:#fff;color:var(--navy)}
.training-catalog{background:var(--paper)}
.training-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:50px}
.training-group{background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);align-self:start}
.training-group[open]{border-top-color:var(--gold)}
.training-group summary{display:grid;grid-template-columns:42px 1fr auto 22px;gap:12px;align-items:center;padding:22px 24px;cursor:pointer;list-style:none}
.training-group summary::-webkit-details-marker{display:none}
.training-group summary span{display:grid;place-items:center;width:34px;height:34px;background:var(--navy);color:#fff;font-size:.76rem;font-weight:800}
.training-group summary strong{font:700 1.25rem "Space Grotesk"}
.training-group summary small{color:var(--muted);font-size:.75rem}
.training-group summary:after{content:"+";color:var(--blue);font:700 1.35rem "Space Grotesk"}
.training-group[open] summary:after{content:"–"}
.training-group ul{columns:2;column-gap:34px;margin:0;padding:4px 28px 28px 48px;border-top:1px solid var(--line)}
.training-group li{break-inside:avoid;margin:12px 0;color:#435568;font-size:.9rem}
.catalog-note{margin:28px 0 0;padding:20px 22px;border:1px solid rgba(207,163,58,.35);border-left:4px solid var(--gold);border-radius:10px;background:linear-gradient(100deg,rgba(207,163,58,.12),rgba(255,255,255,.03));color:var(--muted);font-size:.95rem}
.catalog-note strong{display:block;margin-bottom:5px;color:var(--gold);font-size:1.02rem}
.real-work{background:#fff;padding-top:35px}
.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:12px;margin-top:52px}
.photo-grid figure{margin:0;overflow:hidden;background:var(--paper)}
.photo-grid figure:nth-child(2){grid-column:span 2}.photo-grid .photo-tall{grid-row:span 2}.photo-grid .photo-detail{grid-column:span 2}
.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.photo-grid figure:hover img{transform:scale(1.035)}
.testimonial-section{background:var(--navy);color:#fff;padding:85px 0}
.testimonial-grid{display:grid;grid-template-columns:90px 1fr 190px;gap:42px;align-items:center}
.testimonial-mark{color:var(--gold);font:700 7rem/1 "Space Grotesk"}.testimonial-section blockquote{margin:0}
.testimonial-section blockquote>p{font:500 clamp(1.4rem,2.5vw,2.15rem)/1.35 "Space Grotesk";margin:0}
.testimonial-section footer{display:flex;flex-direction:column;margin-top:26px}.testimonial-section footer strong{color:var(--gold)}
.testimonial-section footer span{color:#c7d5e2;font-size:.86rem;margin-top:4px}.testimonial-proof{border-left:1px solid #41658a;padding-left:32px}
.testimonial-proof strong{display:block;color:var(--gold);font:700 3.5rem "Space Grotesk"}.testimonial-proof span{font-size:.82rem;color:#d1ddea}
.contact-grid{grid-template-columns:1.05fr .55fr .55fr;gap:28px}.download-action{background:#fff}
@media (max-width:900px){.training-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:60px 1fr}.testimonial-proof{grid-column:2;border-left:0;border-top:1px solid #41658a;padding:22px 0 0}.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){.training-group summary{grid-template-columns:38px 1fr 22px;padding:18px}.training-group summary small{grid-column:2}.training-group summary:after{grid-column:3;grid-row:1/3}.training-group ul{columns:1;padding:4px 24px 22px 42px}.photo-grid{grid-template-columns:1fr;grid-auto-rows:260px}.photo-grid figure,.photo-grid figure:nth-child(2),.photo-grid .photo-tall,.photo-grid .photo-detail{grid-column:auto;grid-row:auto}.testimonial-grid{grid-template-columns:1fr;gap:18px}.testimonial-mark{font-size:5rem;height:48px}.testimonial-proof{grid-column:1}}

/* Formulário de diagnóstico */
.diagnostic-section{background:linear-gradient(135deg,#082f5b 0%,#0b477f 100%);color:#fff;padding:105px 0}
.diagnostic-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:start}
.diagnostic-copy h2{font:700 clamp(2.35rem,4vw,4rem)/1.08 "Space Grotesk";letter-spacing:-.035em;margin:20px 0}
.diagnostic-copy>p{color:#d4e0ec;font-size:1.05rem;max-width:540px}
.diagnostic-points{display:grid;gap:0;margin-top:35px;border-top:1px solid #41658a}
.diagnostic-points span{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #41658a;color:var(--gold);font-weight:800}
.diagnostic-points strong{color:#fff;font-weight:600}
.diagnostic-form{background:#fff;color:var(--ink);padding:38px;box-shadow:0 28px 60px rgba(0,0,0,.22)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.diagnostic-form label{display:grid;gap:8px;margin-bottom:18px;font-size:.84rem;font-weight:800;color:var(--navy)}
.diagnostic-form input,.diagnostic-form textarea{width:100%;border:1px solid #cbd7e2;background:#f9fbfc;color:var(--ink);padding:13px 14px;border-radius:2px;font:500 1rem Manrope;line-height:1.4}
.diagnostic-form input:focus,.diagnostic-form textarea:focus{outline:3px solid rgba(216,166,58,.28);border-color:var(--gold)}
.diagnostic-form textarea{resize:vertical;min-height:130px}
.diagnostic-form .consent-field{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-weight:500;line-height:1.45}
.consent-field input{width:18px;height:18px;margin-top:2px;accent-color:var(--blue);flex:0 0 auto}
.diagnostic-form button{width:100%;border:0;background:var(--gold);color:#102337;padding:15px 18px;font:800 1rem Manrope;cursor:pointer;border-radius:3px}
.diagnostic-form button:hover{filter:brightness(1.05)}.form-note{color:var(--muted);font-size:.78rem;margin:13px 0 0;text-align:center}
.footer p a{color:var(--gold);font-size:.76rem;word-break:break-all}
.footer-socials{display:flex;gap:16px;margin-top:9px}.footer-socials a{font-size:.84rem;word-break:normal}.contact-lines a[href*="linkedin"],.contact-lines a[href*="instagram"]{color:var(--gold);text-decoration-thickness:1px;text-underline-offset:4px}
@media (max-width:900px){.diagnostic-grid{grid-template-columns:1fr;gap:42px}}
@media (max-width:560px){.diagnostic-section{padding:75px 0}.field-row{grid-template-columns:1fr}.diagnostic-form{padding:25px 20px}}

/* Placa comemorativa da 100ª turma */
.testimonial-grid{grid-template-columns:70px 1fr 360px}
.plaque-frame{margin:0;background:#fff;color:var(--ink);padding:10px;box-shadow:0 18px 45px rgba(0,0,0,.25)}
.plaque-frame>div{height:265px;overflow:hidden;background:#d9e1e7}
.plaque-frame img{width:172%;max-width:none;height:100%;object-fit:cover;object-position:left center}
.plaque-frame figcaption{display:flex;flex-direction:column;padding:13px 10px 8px}.plaque-frame figcaption strong{color:var(--blue);font:700 1rem "Space Grotesk"}.plaque-frame figcaption span{color:var(--muted);font-size:.74rem;margin-top:3px}
@media (max-width:900px){.testimonial-grid{grid-template-columns:60px 1fr}.plaque-frame{grid-column:2;max-width:500px}.plaque-frame>div{height:300px}}
@media (max-width:560px){.testimonial-grid{grid-template-columns:1fr}.plaque-frame{grid-column:1}.plaque-frame>div{height:240px}}
