/* Composições visuais premium aprovadas. */
.proto-visual-card{position:relative;overflow:hidden;margin-top:28px;border:1px solid rgba(219,230,222,.9);border-radius:22px;background:#f7faf7;box-shadow:0 20px 60px rgba(3,36,24,.18)}
.proto-visual-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.proto-visual-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(4,36,25,.5));pointer-events:none}.proto-visual-card .proto-badge{position:absolute;z-index:2;top:16px;right:16px;padding:7px 10px;border:1px solid rgba(255,255,255,.65);border-radius:99px;background:rgba(4,52,34,.74);color:#fff;font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.proto-visual-card .proto-caption{position:absolute;z-index:2;right:18px;bottom:16px;left:18px;color:#fff}.proto-visual-card .proto-caption strong{display:block;font-size:1rem}.proto-visual-card .proto-caption span{font-size:.73rem;opacity:.9}
.proto-map-overlay{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.proto-parcel{fill:rgba(255,255,255,.06);stroke:#f4f8ef;stroke-width:1;vector-effect:non-scaling-stroke}.proto-parcel:nth-child(2){stroke:#e3bb51}.proto-marker{position:absolute;z-index:2;display:grid;place-items:center;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:#bd9330;color:#fff;font-size:.62rem;font-weight:900;box-shadow:0 3px 10px rgba(0,0,0,.32)}
.v2-home .v2-hero-photo{position:relative}.v2-home .v2-hero-photo:after{content:"Demonstração · leitura territorial";position:absolute;right:18px;bottom:16px;padding:7px 10px;border-radius:7px;background:rgba(4,48,31,.76);color:#fff;font-size:.64rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.v2-home .v2-hero-photo img{aspect-ratio:16/10;object-fit:cover}
.monitoramento-page .stage5-hero-visual img{content:url('/enterprise-v1-assets/prototipo/monitoramento-atual-v1.webp');aspect-ratio:16/9;object-fit:cover}.proto-temporal{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.proto-temporal figure{position:relative;margin:0;overflow:hidden;border-radius:16px;background:#073b29}.proto-temporal img{display:block;width:100%;height:190px;object-fit:cover}.proto-temporal figcaption{position:absolute;right:0;bottom:0;left:0;padding:10px 12px;background:linear-gradient(transparent,rgba(2,35,23,.88));color:#fff;font-size:.75rem}.proto-temporal small{display:block;color:#dfc36f;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.proto-temporal .proto-temporal-label{position:absolute;top:10px;left:10px;padding:5px 8px;border-radius:6px;background:rgba(4,52,34,.72);color:#fff;font-size:.58rem;font-weight:800;text-transform:uppercase}
.prices-v2 .price-intro{position:relative;overflow:hidden;border-radius:0 0 24px 24px;background:linear-gradient(135deg,#f5f8f4 0%,#fff 65%)}.prices-v2 .quick-offers,.prices-v2 .price-family,.prices-v2 .enterprise-prices,.prices-v2 .conditions{border-radius:18px}.prices-v2 .price-family{padding-block:34px}.prices-v2 .catalog-pair{border:1px solid #dbe7dd;box-shadow:0 12px 30px rgba(11,56,35,.07)}.prices-v2 .price-columns article{padding:20px}.prices-v2 .annual{background:#eef6ef}.prices-v2 .enterprise-prices>div{gap:14px}.prices-v2 .enterprise-prices article{border:1px solid #dbe7dd;border-radius:14px;background:#f7faf7}

/* Refinamento visual aprovado. */
.proto-temporal-cta{grid-column:1/-1;margin-top:2px;text-align:center}
.proto-report-pages{display:flex;gap:7px;margin-top:10px}.proto-report-pages span{padding:7px 8px;border-radius:5px;background:#f1f5ef;color:#1d4f3b;font-size:.56rem;font-weight:900;letter-spacing:.06em;box-shadow:0 2px 0 #c8d7cb}.proto-report-pages span:nth-child(2){transform:translateY(-3px)}
@media(max-width:800px){.proto-report-integrity{grid-template-columns:auto 1fr 1fr}.proto-report-integrity span:last-child{grid-column:2}.proto-monitor-signals{grid-template-columns:1fr 1fr}.monitoramento-page .stage5-hero{padding-top:24px;padding-bottom:24px}.monitoramento-page .stage5-hero-visual img{height:92px}.monitoramento-page .proto-temporal-cta{width:100%}.prices-v2 .price-intro{padding-top:32px;padding-bottom:24px}.prices-v2 .price-intro h1{font-size:clamp(32px,10vw,42px);line-height:1.05}.prices-v2 .quick-offers{padding-block:24px}.prices-v2 .price-family{padding-block:20px}.prices-v2 .catalog-pair{padding:12px}.prices-v2 .price-columns article{padding:16px}.prices-v2 .price-columns strong{font-size:29px}}

/* Composições complementares. */
.proto-photo-frame,.proto-faq-visual{position:relative}.proto-photo-badge{position:absolute;z-index:3;top:14px;right:14px;padding:7px 10px;border-radius:7px;background:rgba(4,52,34,.82);color:#fff;font-size:.61rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.proto-solutions-page .stage5-hero-visual img{aspect-ratio:16/10;object-fit:cover}.proto-solutions-page .stage5-hero-visual{overflow:hidden;border-radius:22px}.proto-solutions-page .stage5-hero-visual .proto-map-overlay{border-radius:22px}.proto-enterprise-page .inner-hero-grid{isolation:isolate}.proto-about-page .stage5-hero-visual{overflow:hidden;border-radius:22px}.proto-contact-page .contact-hero-side{position:relative}.proto-contact-page .contact-hero-side .proto-photo-badge{top:14px;left:14px;right:auto}.proto-contact-page .contact-details{align-content:start}.proto-faq-page .stage5-hero{display:block}.proto-faq-page .stage5-hero>.shell{display:block!important;width:100%;max-width:1240px!important;margin:0 auto!important;padding-right:28px!important;padding-left:28px!important}.proto-faq-visual{max-width:1240px;margin:30px auto 0;overflow:hidden;border-radius:22px;background:#073b29;box-shadow:0 18px 50px rgba(9,47,30,.14)}.proto-faq-visual img{display:block;width:100%;height:290px;object-fit:cover;opacity:.88}.proto-faq-visual>div{display:grid;gap:4px;padding:16px;color:#fff}.proto-faq-visual>div span{color:#c9ded0;font-size:.78rem;line-height:1.45}.proto-faq-page .gv-faq-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.proto-faq-page .gv-faq-category{padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.proto-faq-page .gv-faq-category h3{margin-top:0;color:#0b5d3b}.proto-faq-page .stage5-links{margin-top:28px}
@media(max-width:900px){.proto-faq-page .stage5-hero{display:block}.proto-faq-visual{margin:24px 20px 0}.proto-faq-visual img{height:210px}.proto-faq-page .gv-faq-categories{grid-template-columns:1fr}.proto-solutions-page .stage5-hero-visual img{height:230px}.proto-about-page .stage5-hero-visual img{height:250px}.proto-contact-page .contact-hero-side img{min-height:230px;object-fit:cover}}
@media(max-width:600px){.proto-faq-visual{margin-right:16px;margin-left:16px}.proto-faq-page .stage5-hero{padding-bottom:34px}.proto-faq-page .gv-faq-category{padding:16px}.proto-contact-page .contact-hero-contacts{grid-template-columns:1fr}.proto-photo-badge{font-size:.54rem}}

/* Ajustes estruturais: margens e âncoras sob header móvel. */
.proto-contact-page #contato-form{width:min(100% - 48px,1240px);margin:0 auto;padding:64px 0;box-sizing:border-box}
.proto-contact-page #contato-form>div{min-width:0}
@media(max-width:800px){
  .proto-contact-page #contato-form{width:min(100% - 32px,1240px);padding:42px 0}
  .proto-contact-page #contato-form>div,.proto-contact-page #contato-form form{min-width:0}
}
@media(max-width:900px){
  html{scroll-padding-top:78px}
  .site-header{height:76px}
  .header-inner{min-height:76px}
  .main-nav{top:76px;max-height:calc(100vh - 76px);overflow-y:auto}
  .proto-faq-page .stage5-section{scroll-margin-top:88px}
}

/* Cabeçalho mobile canônico: CTA somente dentro do menu aberto. */
.mobile-menu-cta{display:none}
@media(max-width:800px){
  .site-header{height:76px;min-height:76px}
  .site-header>.button{display:none!important}
  .site-header .header-cta{display:none!important;visibility:hidden!important;pointer-events:none!important}
  .site-header .header-inner > .button:not(.mobile-menu-cta){display:none!important;visibility:hidden!important;pointer-events:none!important}
  .site-header .header-inner{height:76px;min-height:76px;max-height:76px}
  .site-header #menu-principal .mobile-menu-cta{display:none!important;width:100%;margin-top:12px;align-items:center;justify-content:center;text-align:center}
  body.menu-open .site-header #menu-principal .mobile-menu-cta{display:flex!important}
}

/* Composição editorial estática de Relatórios. */
.proto-report-complete{padding-top:54px;padding-bottom:64px}.proto-report-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px;align-items:stretch}.proto-report-page{position:relative;padding:22px;border:1px solid #d8e2da;border-radius:18px;background:#fff;color:#17382b;box-shadow:0 18px 45px rgba(4,35,24,.18)}.proto-report-page header{display:flex;justify-content:space-between;align-items:center;color:#196345;font-size:.68rem;font-weight:900;letter-spacing:.1em}.proto-report-page header b{padding:6px 8px;border-radius:6px;background:#e9f1ea;color:#1b6948;font-size:.58rem}.proto-report-page h3{margin:22px 0 5px;font-size:1.35rem}.proto-report-page>p{margin:0 0 16px;color:#60766a;font-size:.78rem}.proto-report-map{position:relative;overflow:hidden;border-radius:12px;background:#dfe9df}.proto-report-map img{display:block;width:100%;height:280px;object-fit:cover}.proto-report-map svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.proto-report-map path{fill:rgba(255,255,255,.08);stroke-width:1.4;vector-effect:non-scaling-stroke}.proto-report-map .car{stroke:#fff}.proto-report-map .sigef{stroke:#d5a942}.proto-map-label{position:absolute;padding:5px 7px;border-radius:5px;background:#0a4b35;color:#fff;font-size:.62rem;font-weight:900}.car-label{top:25%;left:31%}.sigef-label{top:27%;right:25%;background:#8a6821}.proto-map-legend{display:flex;gap:16px;margin:10px 0;color:#63786d;font-size:.66rem}.proto-map-legend i{display:inline-block;width:18px;height:2px;margin-right:5px;vertical-align:middle;background:#fff}.proto-map-legend .legend-sigef{background:#d5a942}.proto-report-page footer{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid #e0e8e1;color:#718178;font-size:.62rem}.proto-report-side{display:grid;gap:14px;align-content:start}.proto-report-indicators,.proto-report-trace{padding:20px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:#0b4432;color:#eef7f0}.proto-report-indicators h3,.proto-report-trace>strong{margin:0 0 14px;font-size:1rem}.proto-report-indicators>div{display:grid;gap:9px}.proto-report-indicators span{display:grid;grid-template-columns:1fr 72px;gap:5px;align-items:center;padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.12)}.proto-report-indicators b{font-size:.72rem}.proto-report-indicators small{grid-column:1;color:#bcd2c2;font-size:.61rem}.proto-report-indicators i{grid-column:2;grid-row:1;width:100%;height:6px;border-radius:10px;background:linear-gradient(90deg,#d6b552 63%,rgba(255,255,255,.15) 63%)}.proto-report-trace>div{display:flex;align-items:center;gap:9px;margin:10px 0 12px}.proto-report-trace p{display:flex;justify-content:space-between;gap:10px;margin:9px 0;padding-top:9px;border-top:1px solid rgba(255,255,255,.12);font-size:.68rem}.proto-report-trace p span,.proto-report-trace code{color:#c7dbcd;font-size:.62rem;text-align:right}.proto-report-trace code{font-family:inherit}.proto-report-side>.button{width:100%;text-align:center}.proto-report-complete .proto-qr{flex:none}
@media(max-width:800px){.proto-report-complete{padding-top:38px}.proto-report-layout{grid-template-columns:1fr}.proto-report-map img{height:220px}.proto-report-side{gap:12px}.proto-report-page{padding:16px}.proto-report-page h3{margin-top:16px}.proto-report-map-legend{flex-wrap:wrap}}
