/* Proposta visual local. A folha do site publicado permanece intacta. */
:root{--navy:#092d59;--blue:#154d80;--blue-bright:#2873b6;--yellow:#ebca1e;--ink:#123250;--muted:#657382;--pale:#f5f6f8;--line:#e0e5eb;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
body{background:#fff;-webkit-font-smoothing:antialiased}
html{scroll-padding-top:90px}
h1,h2,h3,h4{font-family:Arial,Helvetica,sans-serif;font-weight:600!important;letter-spacing:-.045em!important}
p{line-height:1.65}.container{width:min(100% - 96px,1200px)}
.section{padding-block:100px}.section-kicker,.eyebrow{font-size:12px;font-weight:600;letter-spacing:.12em;line-height:1.5;margin-bottom:24px}
.section-heading h2,.intro-grid h2,.team-grid h2,.contact-section h2{font-size:clamp(40px,4.7vw,64px);line-height:1.06;font-weight:600;max-width:22ch}
.section-heading{margin-bottom:42px;gap:50px}.section-heading>p{max-width:320px;font-size:16px;line-height:1.6}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.88);color:var(--navy);backdrop-filter:blur(22px);border-bottom:1px solid rgba(9,45,89,.07);z-index:50}
.header-inner{min-height:72px;flex-direction:row;gap:36px;padding-block:0;align-items:center}
.brand{width:106px}.brand img{filter:brightness(0) saturate(100%) invert(15%) sepia(39%) saturate(1446%) hue-rotate(173deg) brightness(96%)}
.main-nav{font-size:12px;font-weight:500;gap:26px;flex-wrap:nowrap;width:auto}
.main-nav a{color:var(--ink);padding:12px 0}.main-nav a:hover{color:var(--blue-bright)}
.main-nav .nav-service{border:0;padding:12px 0;color:var(--ink);background:transparent;border-radius:0}
.main-nav .nav-service:hover{color:var(--blue-bright);background:transparent}
.main-nav .nav-contact{border:1px solid #c7d2dc;border-radius:999px;padding:9px 16px}
.menu-toggle{display:none}
.hero{background:linear-gradient(#fff 36%,#f0f5f9);color:var(--navy);text-align:center;overflow:hidden}
.hero::before{display:none}.hero-grid{min-height:0;justify-content:center;padding-block:78px 0;display:flex}
.hero-copy{max-width:1000px;padding:0}.hero .eyebrow{justify-content:center;color:var(--blue);margin-bottom:23px}
.hero h1{max-width:none;font-size:clamp(54px,7.7vw,100px);line-height:.98;letter-spacing:-.06em!important;margin:0 0 30px}
.hero h1 em{color:var(--blue);font-weight:600}.hero-intro{font-size:20px;line-height:1.5;max-width:650px;color:var(--muted);margin:0 auto 28px}
.hero-actions{justify-content:center;align-items:center;gap:24px}.button{min-height:46px;padding:13px 23px;border-radius:999px;font-size:14px;font-weight:500;gap:15px;box-shadow:none;transition:background .25s,transform .25s}
.button:hover{transform:translateY(-3px)}.button span{font-size:18px}.button-yellow{background:var(--yellow);color:var(--navy)}
.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--blue);font-size:15px;text-decoration:none}.text-link span{font-size:25px;transition:transform .25s}.text-link:hover span{transform:translateX(4px)}
.terrain-art{max-width:1450px;margin:5px auto 0;position:relative}.terrain-art svg{width:100%;display:block;transform-origin:center;animation:land-rise 1.8s cubic-bezier(.2,.7,.3,1) both}
.terrain-route{stroke-dasharray:1300;stroke-dashoffset:0;animation:trace-route 4s cubic-bezier(.3,.5,.3,1) both}
.terrain-caption{position:absolute;bottom:22px;left:10%;right:10%;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.hero-footnote{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:20px 0;color:#5c7287;font-size:10px;letter-spacing:.1em;border-top:1px solid #dce5ed}
#motion-toggle{border:0;background:none;color:var(--muted);font:inherit;font-size:11px;letter-spacing:0;cursor:pointer;padding:5px}
.intro-section{background:#fff}.intro-grid{grid-template-columns:1.12fr .88fr;gap:70px;align-items:start}
.intro-grid h2{font-size:clamp(38px,4.2vw,58px)}.intro-body{padding-top:41px;font-size:15px}
.location-note{min-height:170px;border:0;border-radius:24px;background:#f4f7fa;padding:20px 24px;margin-top:28px;gap:8px}
.location-copy{font-size:14px;font-weight:600;max-width:200px}.location-note small{font-size:12px;line-height:1.45;max-width:160px}
.region-map{height:150px;width:138px}.location-mark{width:9px;height:9px;border-width:2px}
.services-section{background:var(--pale);padding-bottom:74px}.carousel-controls{margin:0 0 22px}.carousel-status{font-size:12px;color:var(--muted)}
.carousel-buttons{gap:8px}.carousel-button{width:42px;height:42px;min-height:0;padding:0;border:0;border-radius:50%;background:#e6e9ed;color:var(--navy);font-size:22px;font-weight:400}
.services-viewport{border-radius:26px}.services-track{gap:24px}.service-card{flex-basis:calc((100% - 24px)/2);min-height:665px;display:flex;flex-direction:column;border:0;border-radius:26px;background:white;color:var(--navy);box-shadow:none}
.service-card::before{display:none}.service-backdrop{position:relative;inset:auto;height:200px;width:100%;opacity:1;object-fit:cover;filter:saturate(.78)}
.service-card-content{padding:28px 30px 32px}.service-number{font-size:10px;letter-spacing:.14em;color:var(--blue-bright);margin-bottom:14px}
.service-card h3{color:var(--navy);font-size:28px;line-height:1.1;max-width:22ch;margin-bottom:14px}
.service-card p{color:var(--muted);font-size:14px;margin-bottom:16px}.service-card ul{grid-template-columns:1fr 1fr;border-color:#e6ebef;gap:4px 14px;padding-top:18px}
.service-card li{font-size:12px;color:#466077;line-height:1.45;margin:3px 0;padding-left:10px}.service-card li::before{width:3px;height:3px;background:#2873b6;top:7px;border-radius:50%}
.subdivision-feature{background:var(--pale);padding:0 0 86px}.subdivision-feature-card{border:0;border-radius:30px;grid-template-columns:1.12fr .88fr;background:var(--navy);min-height:520px}
.subdivision-feature-copy{padding:57px 50px;align-self:center}.subdivision-feature-copy .section-kicker{font-size:11px;color:#e5d157}
.subdivision-feature-copy h2{font-size:clamp(37px,4.4vw,58px);line-height:1.04;margin-bottom:0;max-width:18ch}
.subdivision-feature-copy>p:not(.section-kicker){font-size:16px;line-height:1.6;max-width:360px;margin-block:24px 28px;color:#c2d4e5}
.subdivision-feature-image{min-height:450px;overflow:hidden}.subdivision-feature-image img{object-position:center;filter:saturate(.72);transition:transform 1.2s cubic-bezier(.2,.7,.3,1)}
.subdivision-feature-card:hover .subdivision-feature-image img{transform:scale(1.035)}
.subdivision-feature-image::after{background:linear-gradient(0deg,rgba(5,31,58,.65),transparent 42%)}.subdivision-feature-image span{font-size:13px;font-weight:400;bottom:24px;left:28px}
.projects-section{padding-block:104px 80px;background:#fff}.projects-heading{align-items:center}.projects-heading h2{max-width:15ch}
.projects-grid{grid-auto-rows:260px;gap:18px}.project-card{border-radius:22px}.project-card::after{inset:0;background:linear-gradient(transparent 25%,rgba(3,21,42,.8))}
.project-card img{filter:saturate(.82);transition:transform .7s ease}.project-card:hover img{transform:scale(1.055)}
.project-copy{inset:auto 24px 24px}.project-type{border:0;padding:0;font-size:9px;letter-spacing:.11em;font-weight:500;color:#f2e483}
.project-card h3{font-size:25px;line-height:1.1;font-weight:500!important;margin-bottom:7px}.project-card p{font-size:12px;line-height:1.45;color:#e2e8ef}
.project-rotation-controls{margin-top:25px;gap:12px}.project-rotation-status{font-size:11px;min-width:175px}.rotation-toggle{border:0;background:#f0f3f6;border-radius:999px;font-size:11px;font-weight:400;padding:8px 15px}.project-dot::after{width:6px;height:6px}.project-dot{width:25px;height:32px}
.georeferencing-feature{background:#fff;padding:0 0 100px}.georeferencing-feature .subdivision-feature-card{grid-template-columns:1fr 1fr;background:#eff4f8;color:var(--navy)}
.georeferencing-feature .subdivision-feature-copy h2{color:var(--navy)}.georeferencing-feature .subdivision-feature-copy>.section-kicker{color:var(--blue)}
.georeferencing-feature .subdivision-feature-copy>p:not(.section-kicker){color:var(--muted)}.georeferencing-feature .subdivision-feature-image img{object-position:50% 50%}
.team-section{background:var(--pale);padding-block:88px}.team-grid{gap:60px;grid-template-columns:1.2fr 1fr;align-items:center}.team-intro{font-size:15px;max-width:440px;color:var(--muted);margin-top:24px}
.team-grid h2{font-size:clamp(37px,4vw,52px)}.team-list{border-top:0}.team-list>div{border-bottom:1px solid #dce3e9;padding:24px 0;gap:22px}.team-list>div>span{font-size:11px;color:#8a9aad;font-weight:400}.team-list strong{font-size:17px;font-weight:500}.team-list small{font-size:13px;color:var(--muted)}
.specialists{margin-top:58px;padding-top:40px;border-color:#dce3e9}.specialists-heading{gap:24px;margin-bottom:26px}.specialists-heading .section-kicker{min-width:0;font-size:10px;max-width:130px}.specialists-heading h3{font-size:26px}.specialists-heading>p:last-child{font-size:12px;max-width:240px}
.specialists-grid{grid-template-columns:repeat(5,1fr);gap:24px 20px}.specialists-grid article{background:none;border:0;border-top:1px solid #dce3e9;border-radius:0;padding:16px 0 0;min-height:130px}.specialists-grid article>span{display:none}.specialists-grid h4{font-size:15px;letter-spacing:-.02em!important;margin:0 0 9px;font-weight:500!important}.specialists-grid p{font-size:12px;line-height:1.5;color:var(--muted)}
.contact-section{background:var(--navy);padding-block:92px;color:white}.contact-grid{grid-template-columns:1fr 1fr;gap:65px;align-items:start}.contact-section h2{font-size:clamp(40px,4.8vw,64px);line-height:1.07;max-width:12ch}.contact-section .section-kicker{color:#ebca1e;font-size:11px}.contact-intro{font-size:16px!important;color:#bdcfe1!important}
.contact-section p{line-height:1.6}.contact-actions{gap:12px}.button-outline{border-color:#63809c;border-radius:999px;font-size:14px}
.contact-card{background:rgba(255,255,255,.035);border:1px solid #2e4d70;border-radius:24px;padding:28px;gap:24px;font-size:14px}.contact-card span{color:#9fb7ce;font-size:10px;font-weight:500;letter-spacing:.12em}.contact-card p{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.contact-card a{font-size:13px;text-underline-offset:4px;text-decoration-color:#6a86a0}.contact-map{height:185px;border-radius:14px;background:#cfdce6}.contact-map a span{font-size:12px;color:white}.contact-watermark{display:none!important}
.site-footer{background:var(--navy);color:#91a9c1;border-top:1px solid #2c4868}.footer-inner{padding-block:28px;min-height:0;gap:40px}.footer-inner img{width:100px;opacity:.86}.footer-inner p{font-size:11px}.back-to-top{width:40px;height:40px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);color:var(--navy);border:1px solid #cad5df;box-shadow:0 4px 18px #092d5914;right:22px;bottom:22px}.back-to-top svg{width:18px;height:18px}
.reveal{transition:opacity .8s ease,transform .9s cubic-bezier(.18,.67,.3,1)}.js-motion .reveal:not(.is-revealed){opacity:0;transform:translateY(26px)}
.capture .reveal{opacity:1!important;transform:none!important}.capture *{animation:none!important;transition:none!important}.capture .site-header{position:relative}.capture .back-to-top{display:none}.capture .terrain-route{stroke-dashoffset:0}
.motion-paused *{animation-play-state:paused!important}.motion-paused .reveal{opacity:1!important;transform:none!important;transition:none}
.contact-section::after{display:none}.subdivision-feature-image span{color:#fff}.contact-detail:has(a[href^="mailto:"]){grid-column:1/-1;order:3}.contact-card .contact-detail p{margin:8px 0 0}.map-illustration{display:block;width:100%;height:100%;object-fit:cover}.contact-map a{background:linear-gradient(transparent 50%,#092d59b8)}
@keyframes trace-route{from{stroke-dashoffset:1300}to{stroke-dashoffset:0}}
@keyframes land-rise{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
@media(min-width:1450px){.terrain-art{margin-top:-5px}.hero-footnote{padding-inline:0}.hero-grid{padding-top:90px}}
@media(max-width:1200px){.main-nav{gap:19px;font-size:11px}.header-inner{gap:24px}.hero-footnote{margin-inline:48px}.service-card ul{grid-template-columns:1fr 1fr}.service-card-content{padding:25px}.specialists-grid{grid-template-columns:repeat(5,1fr)}.subdivision-feature-copy{padding:40px}.contact-card{padding:24px}.hero h1{font-size:78px}}
@media(max-width:900px){.container{width:calc(100% - 56px)}.main-nav{gap:14px;font-size:11px}.header-inner{gap:20px}.brand{width:90px}.main-nav .nav-contact{padding:8px 10px}.hero h1{font-size:66px}.intro-grid{gap:38px}.location-note{padding:16px;flex-wrap:wrap}.region-map{width:100px;height:120px}.location-copy{max-width:150px}.service-card{min-height:740px}.service-card ul{grid-template-columns:1fr}.subdivision-feature-copy{padding:35px}.subdivision-feature-copy h2{font-size:40px}.specialists-grid{grid-template-columns:repeat(3,1fr)}.contact-grid{gap:35px}.contact-card{padding:20px}.contact-actions{flex-direction:column;align-items:start}.contact-section h2{font-size:48px}.hero-footnote{margin-inline:28px}}
@media(max-width:700px){html{scroll-padding-top:75px}.container{width:calc(100% - 40px)}.header-inner{min-height:64px;flex-direction:row;align-items:center;justify-content:space-between}.brand{width:96px}.menu-toggle{display:flex;align-items:center;gap:18px;background:none;border:0;color:var(--navy);padding:12px;font:inherit;font-size:13px;cursor:pointer}.menu-toggle span{font-size:20px}.main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;padding:18px 26px 26px;flex-direction:column;align-items:stretch;gap:3px;box-shadow:0 20px 30px #092d5912}.main-nav.is-open{display:flex}.main-nav a,.main-nav .nav-service,.main-nav .nav-contact{padding:12px;font-size:15px;border:0}.hero-grid{padding-top:58px}.hero h1{font-size:clamp(43px,9.3vw,60px);line-height:1.01;letter-spacing:-.055em!important}.hero .eyebrow{font-size:10px}.hero-intro{font-size:17px;max-width:320px}.hero-actions{flex-direction:column;gap:13px}.hero-actions .button{font-size:13px}.text-link{font-size:13px}.terrain-art{width:150%;margin-left:-25%;margin-top:24px}.terrain-caption{display:none}.hero-footnote{margin-inline:20px;padding-block:16px;font-size:8px;gap:10px}.hero-footnote>span{max-width:160px;line-height:1.5}.section{padding-block:65px}.intro-grid,.team-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.intro-grid h2,.section-heading h2,.team-grid h2{font-size:39px}.intro-body{padding-top:0;font-size:15px}.section-kicker{margin-bottom:18px;font-size:10px}.location-note{min-height:150px;flex-wrap:nowrap;margin-top:22px}.location-copy{max-width:200px}.region-map{width:110px;height:125px}.section-heading{gap:20px;margin-bottom:28px;flex-direction:column;align-items:start}.section-heading>p{font-size:15px}.carousel-controls{margin-bottom:16px}.service-card{flex-basis:100%;min-height:0}.service-backdrop{height:190px}.service-card-content{padding:26px}.service-card ul{grid-template-columns:1fr 1fr}.service-card li{font-size:12px}.service-card h3{font-size:27px}.subdivision-feature{padding-bottom:60px}.subdivision-feature-card,.georeferencing-feature .subdivision-feature-card{grid-template-columns:1fr;border-radius:24px}.subdivision-feature-copy{padding:36px 30px}.subdivision-feature-copy h2{font-size:39px}.subdivision-feature-copy>p:not(.section-kicker){font-size:15px}.subdivision-feature-image{min-height:260px}.georeferencing-feature .subdivision-feature-image{min-height:300px;order:0}.projects-grid{grid-template-columns:1fr;grid-auto-rows:285px;gap:15px}.project-featured{grid-column:auto}.projects-grid[data-project-set="5"] .project-card:last-child{grid-column:auto}.project-copy{inset:auto 25px 25px}.project-card h3{font-size:27px}.project-card p{font-size:13px}.project-rotation-controls{gap:9px}.project-rotation-status{min-width:0;width:100%;text-align:center}.specialists{margin-top:34px;padding-top:28px}.specialists-heading{display:block}.specialists-heading .section-kicker{max-width:none}.specialists-heading h3{font-size:25px}.specialists-heading>p:last-child{max-width:100%;margin-top:12px}.specialists-grid{grid-template-columns:1fr 1fr;gap:24px}.specialists-grid article{min-height:0}.specialists-grid h4{font-size:15px}.team-list>div{padding:21px 0}.contact-section h2{font-size:47px}.contact-actions{flex-direction:row;align-items:center;gap:10px}.contact-actions .button{font-size:12px;padding:13px 16px}.contact-card{padding:25px;grid-template-columns:1fr 1fr}.contact-address{grid-column:1/-1}.contact-map{height:210px}.footer-inner{flex-direction:column;align-items:start;gap:15px;padding-block:27px}.footer-inner p{font-size:11px}.back-to-top{right:15px;bottom:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-motion .reveal:not(.is-revealed){opacity:1;transform:none}.terrain-route{stroke-dashoffset:0}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Shared production refinements */
.main-nav a[aria-current="page"]{color:var(--blue-bright);background:transparent}.main-nav .nav-service[aria-current="page"]{color:var(--blue);background:#edf3f8;border-radius:999px;padding:9px 15px}.contact-map iframe{position:absolute;inset:0}.contact-map .map-illustration{position:absolute;inset:0}.land-motion-controls{display:flex;justify-content:flex-end;padding-bottom:16px}.site-footer .brand img{filter:none}@media(max-width:700px){.main-nav .nav-service[aria-current="page"]{padding:12px;border-radius:12px}.main-nav .nav-service{font-size:15px}.service-card li{font-size:13px}}
.motion-paused .projects-grid{animation:none!important;opacity:1;transform:none}
