/* Homepage only — identity manual, local review. No other page consumes this file. */
body.manual-home {
  --navy-950:#050C22; --navy-900:#0A3868; --navy-800:#122A5C;
  --gold-500:#E2C27A; --gold-400:#F2D99A; --gold-600:#B8862F;
  --ink:#0B1F3A; --muted:#52647A; --line:#dce3ec;
  --e-out:cubic-bezier(.16,1,.3,1); --e-soft:cubic-bezier(.33,1,.68,1);
  font-family:Urbanist,system-ui,sans-serif; font-size:17px;
  background:#F3F6FA; color:#0B1F3A;
}
.manual-home .container { width:min(1240px,calc(100% - 80px)); }
.manual-home .section { padding:100px 0; }
.manual-home :is(h1,h2) { font-family:"Source Serif 4",Georgia,serif; font-weight:500; letter-spacing:-.045em; }
.manual-home :is(h1,h2) em { font-weight:500; font-style:italic; }
.manual-home .section-title { font-size:clamp(36px,4.3vw,60px); line-height:1.08; max-width:850px; }
.manual-home :is(.section-label,.hero-kicker,.pillars-eyebrow,.service-index,.about-since) {
  font-family:"JetBrains Mono",monospace; font-size:10px; font-weight:500;
  letter-spacing:.16em; text-transform:uppercase; line-height:1.6;
}
.manual-home .section-label { margin-bottom:24px; color:#8A6418; }
.manual-home .section-label::before { width:24px; }
.manual-home :is(p,.section-intro) { line-height:1.65; }
.manual-home .section-intro { max-width:630px; font-size:17px; color:#52647A; }
.manual-home :focus-visible { outline:2px solid #E2C27A; outline-offset:5px; }
.manual-home .button { font-family:Urbanist,system-ui,sans-serif; font-weight:600; font-size:15px; min-height:48px; padding:12px 24px; gap:12px; border-radius:999px; transition:transform .35s var(--e-soft),box-shadow .35s; }
.manual-home .button:active { transform:scale(.98); transition-duration:120ms; }
.manual-home .button-gold { color:#1C1405; background:linear-gradient(170deg,#F2D99A,#E2C27A 55%,#D2AE5E); border:1px solid #FFF5DC80; }
.manual-home .button-secondary { color:#EEF2FB; background:linear-gradient(180deg,#ffffff20,#ffffff0b 55%,#ffffff12); border:1px solid #ffffff25; box-shadow:inset 0 1px .5px #ffffff60,0 8px 20px -10px #0008; backdrop-filter:blur(12px) saturate(175%); }
.manual-home .button svg { width:18px; height:18px; }
html body.manual-home #topo { height:84px; padding:0; }
html body.manual-home #topo .header-inner { width:min(1320px,calc(100% - 32px)); height:64px; padding:0 20px; margin-top:12px; border-radius:999px; gap:22px; }
html body.manual-home #topo .header-inner::before { background:linear-gradient(180deg,#0A3868c9,#072B55b8); backdrop-filter:blur(24px) saturate(175%); box-shadow:inset 0 1px .5px #ffffff60,inset 0 0 0 1px #ffffff14,0 16px 45px -22px #050C2299; }
.manual-home .brand { flex-shrink:0; }
.manual-home .brand-logo-frame { width:184px; height:43px; }
.manual-home .brand-logo { width:100%; height:100%; object-fit:contain; filter:none; }
html body.manual-home #topo .header-cta { color:#fff; background:linear-gradient(180deg,#ffffff24,#ffffff0e); border:1px solid #ffffff35; min-height:42px; padding:8px 18px; font-size:13px; }
.manual-home .desktop-nav { gap:6px; margin-left:auto; }
.manual-home .nav-link { font:600 13px/1.4 Urbanist,sans-serif; padding:10px 12px; border-radius:999px; color:#EEF2FB; }
.manual-home .nav-link.active { background:#ffffff16; box-shadow:inset 0 1px .5px #ffffff28; }
.manual-home .training-nav { gap:0; }
.manual-home .training-menu-toggle { color:#E2C27A; padding:5px; margin-left:-8px; }
html body.manual-home #topo .scroll-progress { display:none; }
html body.manual-home #topo .services-menu { background:linear-gradient(180deg,#124575ed,#082D58f2); color:white; border-radius:24px; backdrop-filter:blur(24px) saturate(175%); }
.manual-home .services-menu a { font-family:Urbanist,sans-serif; font-size:15px; min-height:48px; }
.manual-home .hero { min-height:max(740px,90svh); padding:140px 0 76px; display:block; background:#072B55; isolation:isolate; overflow:hidden; }
.manual-home .hero::after,.manual-home .hero::before { display:none; }
.manual-home .hero-horizon { position:absolute; z-index:-1; opacity:.25; width:1500px; height:1500px; top:-1350px; left:calc(50% - 520px); border-radius:50%; box-shadow:0 0 0 2px #E2C27A80,0 0 28px 4px #E2C27A35,0 0 80px 10px #F2D99A15; transform:rotate(-16deg); pointer-events:none; }
.manual-home .hero-content { position:relative; display:block; min-height:550px; padding-top:10px; padding-bottom:0; }
.manual-home .hero-copy { width:76%; max-width:920px; }
.manual-home .hero-kicker { color:#F2D99A; margin-bottom:30px; }
.manual-home .hero-kicker::before { width:22px; }
.manual-home #hero-title { font-family:"Source Serif 4",Georgia,serif; font-size:clamp(46px,5.5vw,80px); line-height:1.04; font-weight:500; letter-spacing:-.045em; max-width:880px; margin:0 0 28px; }
.manual-home #hero-title em { color:#E2C27A; display:inline; font-style:italic; }
.manual-home .hero-lead { max-width:510px; font-size:18px; line-height:1.65; color:#d9e4ef; margin-bottom:30px; }
.manual-home .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:0; }
.manual-home .hero-visual { position:absolute; z-index:-2; inset:0; width:100%; height:100%; margin:0; border-radius:0; overflow:hidden; border:0; box-shadow:none; transform:none; pointer-events:none; }
.manual-home .hero-visual::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#050C22e6 0%,#072B55b8 38%,#072B555c 67%,#072B551a 100%),linear-gradient(180deg,#050C225c,transparent 25%,transparent 66%,#050C2299); }
.manual-home .hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center center; opacity:1; }
.manual-home .hero-visual-label { display:none; }
html body.manual-home .video-toggle { z-index:2; right:max(24px,calc((100% - 1240px)/2)); bottom:24px; font:500 12px/1.3 Urbanist,sans-serif; min-height:40px; background:#05152455; padding:10px 16px; border:1px solid #ffffff45; }
.manual-home .hero-proof { position:relative; width:100%; max-width:720px; gap:0; padding:28px 0 0; margin:44px 0 0; border-top:1px solid #ffffff26; background:none; border-radius:0; backdrop-filter:none; }
.manual-home .hero-proof li { padding:0 26px; border-right:1px solid #ffffff22; }
.manual-home .hero-proof li:first-child { padding-left:0; }
.manual-home .hero-proof li:last-child { border:0; }
.manual-home .hero-proof strong { font:500 19px/1.4 "JetBrains Mono",monospace; color:#F2D99A; }
.manual-home .hero-proof span { color:#c9d9e8; font-size:13px; margin-top:5px; }
.manual-home .hero-scroll { display:none; }
.manual-home .about { background:#F3F6FA; overflow:hidden; }
.manual-home .about::after,.manual-home .about-monogram { display:none; }
.manual-home .about-grid { grid-template-columns:1.08fr 1fr; gap:100px; align-items:center; }
.manual-home .about-copy p:not(.section-label) { max-width:530px; font-size:18px; color:#52647A; }
.manual-home .about-side { position:relative; padding-bottom:155px; }
.manual-home .about-figure { height:350px; width:100%; border-radius:32px; overflow:hidden; margin:0; }
.manual-home .about-figure img { width:100%; height:100%; object-fit:cover; }
.manual-home .about-since { background:#ffffffee; color:#0B1F3A; padding:12px 16px; border-radius:999px; left:20px; top:20px; }
html body.manual-home #quem-somos .about-panel { width:92%; position:absolute; left:4%; bottom:0; margin:0; padding:26px 28px; background:linear-gradient(145deg,#164677ee,#092F5cf5); color:#EEF2FB; border-radius:26px; box-shadow:inset 0 1px .5px #ffffff80,0 22px 44px -30px #050C2299; }
.manual-home .pillars-heading { border-bottom:1px solid #ffffff20; padding-bottom:14px; margin-bottom:14px; }
.manual-home .pillars-eyebrow { color:#E2C27A; }
.manual-home .pillars-heading h3 { font-family:"Source Serif 4",Georgia,serif; font-size:26px; font-weight:500; }
.manual-home .pillars-list { gap:14px; }
.manual-home .pillars-list h4 { font:600 15px/1.3 Urbanist,sans-serif; }
.manual-home .pillars-list p { color:#cbd9e9; font-size:14px; }
.manual-home .pillar-number { font-family:"JetBrains Mono",monospace; font-size:11px; color:#E2C27A; border:1px solid #ffffff25; background:#ffffff09; }
.manual-home #servicos { background:radial-gradient(80% 75% at 95% 10%,#1D568D70,transparent),linear-gradient(150deg,#0A3868,#072B55); color:#EEF2FB; }
.manual-home #servicos .section-label { color:#E2C27A; }
.manual-home .services-head { grid-template-columns:1.2fr .8fr; align-items:center; gap:64px; margin-bottom:44px; }
.manual-home #services-title { max-width:700px; color:#EEF2FB; font-size:clamp(36px,4vw,58px); }
.manual-home .services-figure { height:208px; border-radius:26px; border:1px solid #ffffff25; }
.manual-home .services-figure img { height:100%; object-fit:cover; }
.manual-home .services-figure figcaption { padding:20px 24px; font:500 15px/1.5 Urbanist,sans-serif; }
html body.manual-home #servicos .service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
html body.manual-home #servicos .service-card { color:#EEF2FB; padding:28px; border:1px solid #ffffff1a; border-radius:26px; background:linear-gradient(180deg,#ffffff13,#ffffff08 46%,#ffffff0d); box-shadow:inset 0 1px .5px #ffffff55,inset 0 0 0 1px #ffffff08,0 20px 40px -30px #050C22aa; backdrop-filter:blur(18px) saturate(175%); gap:18px; min-height:288px; }
html body.manual-home #servicos .service-card:hover { background:linear-gradient(180deg,#ffffff1b,#ffffff0c); box-shadow:inset 0 1px .5px #ffffff80,0 25px 45px -30px #050C22cc; border-color:#ffffff35; transform:translateY(-3px); }
html body.manual-home #servicos .service-card::before { background:radial-gradient(ellipse 300px 240px at var(--ios-light-x,50%) var(--ios-light-y,25%),#ffffff20,transparent 75%); }
html body.manual-home #servicos .service-icon { width:50px; height:50px; border-radius:16px; background:linear-gradient(145deg,#ffffff1c,#ffffff08); color:#E2C27A; border:1px solid #ffffff20; box-shadow:inset 0 1px .5px #ffffff65,0 5px 14px -8px #050C2280; }
.manual-home #servicos .service-icon svg { width:29px; height:29px; }
.manual-home #servicos .service-index { color:#b8cbe0; font-size:10px; }
.manual-home #servicos .service-card h3 { font:600 22px/1.2 Urbanist,sans-serif; color:#EEF2FB; letter-spacing:-.025em; }
.manual-home #servicos .service-card>p { color:#cad8e9; font-size:16px; line-height:1.55; }
.manual-home #servicos .service-card-label { color:#E2C27A; border-color:#ffffff18; padding-top:12px; display:flex; justify-content:space-between; align-items:center; }
.manual-home #servicos .service-card-label::before { content:"Explorar solução"; font:500 13px/1.4 Urbanist,sans-serif; color:#e6edf5; }
.manual-home #servicos .service-card-label svg { color:#E2C27A; background:#ffffff0b; width:32px; height:32px; }
.manual-home #capacitacoes { background:radial-gradient(60% 65% at 100% 40%,#E2C27A18,transparent),#F3F6FA; color:#0B1F3A; }
.manual-home #training-title { color:#0B1F3A; max-width:950px; }
.manual-home #capacitacoes .rail-controls { margin-top:24px; }
html body.manual-home #capacitacoes .course { background:#fff; border:1px solid #0A386815; border-radius:26px; box-shadow:0 16px 36px -25px #0A183840; }
html body.manual-home #capacitacoes .course:hover { background:white; box-shadow:0 24px 44px -28px #0A183855; }
html body.manual-home #capacitacoes .course-body { padding:22px 24px 18px; box-shadow:none; }
.manual-home #capacitacoes .course-category { color:#8A6418; font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:.08em; }
.manual-home #capacitacoes .course h3 { color:#0B1F3A; font:600 21px/1.25 Urbanist,sans-serif; min-height:2.5em; margin:12px 0; letter-spacing:-.025em; }
.manual-home #capacitacoes .course p { color:#52647A; font-size:16px; line-height:1.55; margin-bottom:20px; }
.manual-home #capacitacoes .course-more { border-color:#0A386814; color:#8A6418; }
.manual-home #capacitacoes .course-more svg { color:#0A3868; background:#F3F6FA; }
html body.manual-home #capacitacoes .rail-controls button { color:#0A3868; background:#fff; border:1px solid #0A38681a; box-shadow:inset 0 1px .5px #fff,0 5px 12px -8px #0A386844; }
.manual-home #capacitacoes .rail-dots button span { background:#0A386844; }
.manual-home #capacitacoes .rail-dots button[aria-current=true] span { background:#8A6418; }
html body.manual-home .training-request-callout { padding:28px 32px; border-radius:26px; background:radial-gradient(80% 100% at 90% 0%,#1D568D,#0A3868 70%); box-shadow:inset 0 1px .5px #ffffff80,0 24px 40px -30px #0A386866; }
.manual-home .training-request-callout h3 { font-family:"Source Serif 4",Georgia,serif; font-size:28px; font-weight:500; color:#fff; }
.manual-home .training-request-callout p { color:#d5e2ef; font-size:15px; }
html body.manual-home .training-request-callout .button { color:#fff; background:linear-gradient(180deg,#ffffff2e,#ffffff12); border:1px solid #ffffff35; }
.manual-home #resultados { background:radial-gradient(100% 130% at 100% 0%,#1D568D 0%,#0A3868 55%,#00264B); }
.manual-home #resultados .section-label { color:#E2C27A; }
.manual-home .results-head { gap:64px; margin-bottom:42px; }
.manual-home .results-head h2 { font-size:clamp(36px,4.2vw,60px); color:#fff; line-height:1.08; font-weight:500; }
.manual-home .results-head>p { font-size:17px; color:#d5e2ef; max-width:360px; }
html body.manual-home #resultados .stat { padding:32px; border-radius:26px; background:linear-gradient(180deg,#ffffff13,#ffffff08); border:1px solid #ffffff20; box-shadow:inset 0 1px .5px #ffffff70,0 24px 44px -32px #050C2280; }
.manual-home .stat-value { font-family:"JetBrains Mono",monospace; font-size:clamp(36px,4.4vw,64px); font-weight:500; letter-spacing:-.065em; }
.manual-home #resultados .stat-label { font:400 15px/1.5 Urbanist,sans-serif; color:#d0deed; }
.manual-home .municipalities { margin-top:56px; }
.manual-home .municipalities-heading h3 { font:500 29px/1.2 "Source Serif 4",Georgia,serif; }
html body.manual-home #resultados .municipality-logo { border-radius:22px; background:#fff; border:0; box-shadow:none; padding:18px; }
.manual-home #resultados .municipality-image { height:145px; }
.manual-home #resultados .municipality-logo figcaption { font-family:Urbanist,sans-serif; font-size:15px; color:#0B1F3A; }
.manual-home #resultados .municipality-logo figcaption span { font-size:12px; color:#52647A; }
.manual-home #contato { padding:72px 0 28px; background:#050C22; color:#d5e2ef; }
html body.manual-home .contact-card { padding:44px; border-radius:32px; background:radial-gradient(80% 100% at 100% 0%,#1D568D70,transparent),linear-gradient(140deg,#0A386860,#0A1838); gap:60px; border:1px solid #ffffff24; }
.manual-home .contact-card::after { display:none; }
.manual-home #contato .section-label { color:#E2C27A; }
.manual-home #contact-title { font:500 clamp(32px,3.6vw,50px)/1.1 "Source Serif 4",Georgia,serif; letter-spacing:-.04em; color:#fff; }
.manual-home .contact-copy>p:last-child { color:#cbd9e9; font-size:16px; margin-bottom:0; }
.manual-home .contact-list { gap:14px; margin-bottom:24px; }
.manual-home .contact-item { font-family:Urbanist,sans-serif; font-size:15px; color:#d8e4f0; }
.manual-home .contact-item svg { color:#E2C27A; }
.manual-home .site-footer { color:#94a6bf; border-top:1px solid #ffffff16; margin-top:52px; padding-top:28px; gap:40px; font-family:Urbanist,sans-serif; }
.manual-home .footer-manual-logo { width:150px; height:auto; margin-bottom:18px; }
.manual-home .footer-identity p { font-size:12px; max-width:470px; line-height:1.6; }
.manual-home .training-dialog { color:#0B1F3A; background:#F3F6FA; border:1px solid #fff; border-radius:28px; font-family:Urbanist,sans-serif; }
.manual-home .training-dialog h2 { font-family:"Source Serif 4",Georgia,serif; font-weight:500; }
.manual-home .training-dialog input { font-family:Urbanist,sans-serif; background:white; }
@media(max-width:1100px) {
  .manual-home .container { width:calc(100% - 48px); }
  html body.manual-home #topo .header-inner { gap:10px; }
  .manual-home .nav-link { padding:10px 8px; font-size:12px; }
  .manual-home .brand-logo-frame { width:160px; }
  .manual-home .hero-copy { width:82%; }
  .manual-home .about-grid { gap:48px; }
}
@media(max-width:980px) {
  .manual-home #topo .desktop-nav { background:#082D58e6; backdrop-filter:blur(24px) saturate(175%); -webkit-backdrop-filter:blur(24px) saturate(175%); border:1px solid #ffffff30; padding:16px; top:76px; left:0; right:0; bottom:auto; height:auto; min-height:0; width:100%; border-radius:26px!important; gap:8px; max-height:calc(100svh - 100px); overflow:auto; }
  .manual-home .desktop-nav .nav-link { font-size:16px; padding:12px 16px; }
  .manual-home .services-nav,.manual-home .training-nav { width:100%; }
  .manual-home .services-menu { width:100%; }
  .manual-home .hero { padding-top:130px; }
  .manual-home .hero-content { min-height:530px; }
  .manual-home #hero-title { font-size:60px; }
  .manual-home .hero-proof strong { font-size:15px; }
  .manual-home .hero-proof li { padding:0 16px; }
  .manual-home .services-head { gap:32px; }
  html body.manual-home #servicos .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .manual-home .about-grid { grid-template-columns:1fr 1fr; gap:32px; }
  .manual-home .about-side { padding-bottom:220px; }
  .manual-home .contact-card { gap:32px; padding:32px; }
}
@media(max-width:700px) {
  .manual-home .container { width:calc(100% - 40px); }
  .manual-home .section { padding:68px 0; }
  html body.manual-home #topo .header-inner { padding:0 16px; height:60px; }
  .manual-home .brand-logo-frame { width:166px; }
  .manual-home .hero { min-height:100svh; padding:120px 0 88px; display:block; }
  .manual-home .hero-content { min-height:0; padding-top:0; }
  .manual-home .hero-copy { width:100%; }
  .manual-home #hero-title { font-size:clamp(43px,9.5vw,60px); max-width:620px; }
  .manual-home .hero-lead { font-size:17px; }
  .manual-home .hero-kicker { margin-bottom:22px; font-size:9px; }
  .manual-home .hero-video { object-position:62% center; }
  .manual-home .hero-visual::after { background:linear-gradient(90deg,#050C22cc,#072B5580),linear-gradient(180deg,#050C2280,transparent 40%,#050C22aa); }
  .manual-home .hero-proof { display:grid; grid-template-columns:1fr .82fr 1.15fr; margin-top:28px; padding-top:22px; gap:0; }
  .manual-home .hero-proof li { width:auto; padding:0 10px; }
  .manual-home .hero-proof strong { font-size:12px; letter-spacing:-.055em; white-space:nowrap; }
  .manual-home .hero-proof span { font-size:11px; }
  .manual-home .about-grid,.manual-home .services-head { grid-template-columns:1fr; gap:32px; }
  .manual-home .about-copy p:not(.section-label) { font-size:17px; }
  .manual-home .about-side { padding-bottom:0; }
  html body.manual-home #quem-somos .about-panel { position:relative; left:auto; bottom:auto; width:calc(100% - 24px); margin:-44px auto 0; padding:24px; }
  .manual-home .about-figure { height:300px; }
  .manual-home .services-figure { height:180px; }
  .manual-home #services-title { font-size:42px; }
  html body.manual-home #servicos .service-grid { grid-template-columns:1fr; gap:14px; }
  html body.manual-home #servicos .service-card { min-height:250px; padding:24px; }
  html body.manual-home #capacitacoes .course { flex-basis:88%; }
  .manual-home #training-title br { display:none; }
  .manual-home .training-request-callout { padding:26px!important; gap:20px; }
  .manual-home .results-head { display:block; }
  .manual-home .results-head>p { margin-top:24px; }
  .manual-home .stats { grid-template-columns:1fr; gap:16px; }
  .manual-home .stat-value { font-size:46px; }
  html body.manual-home #resultados .municipality-logo { flex-basis:calc((100% - 18px)/2); }
  .manual-home #resultados .municipality-image { height:100px; }
  .manual-home .municipalities-heading { gap:16px; }
  .manual-home .municipalities-heading h3 { font-size:23px; }
  .manual-home .contact-card { display:flex; flex-direction:column; padding:30px!important; gap:28px!important; }
  .manual-home .contact-side { width:100%; }
  .manual-home .contact-side .button { white-space:normal; text-align:center; font-size:14px; }
  .manual-home .site-footer { flex-direction:column; gap:20px; }
  .manual-home .hero-actions .button { padding:12px 18px; font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .manual-home *, .manual-home *::before { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
@media(prefers-reduced-transparency:reduce) {
  html body.manual-home #topo .header-inner::before { background:#082D58; }
  html body.manual-home #servicos .service-card { background:#123E6D; }
  .manual-home .button-secondary { background:#123E6D; }
}
