/* Mapper: interações progressivas, sem dependências externas */
:root{--accent-lime:#a9e18f}body{overflow-x:hidden}section[id]{scroll-margin-top:24px}
.scroll-progress{position:fixed;inset:0 auto auto 0;height:3px;width:0;z-index:200;background:linear-gradient(90deg,#89d96d,#dbffbd);pointer-events:none;box-shadow:0 0 16px rgba(137,217,109,.5)}
.site-header{transition:background .3s,border-color .3s,box-shadow .3s}.site-header.is-scrolled{position:fixed;height:76px;background:rgba(8,30,11,.96);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 10px 40px rgba(0,0,0,.17);backdrop-filter:blur(14px)}.site-header.is-scrolled .brand img{height:54px}.site-header nav>a.is-active:not(.portal-link){color:#b2f09b;opacity:1}.site-header nav>a:not(.portal-link){position:relative}.site-header nav>a:not(.portal-link)::after{content:'';position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:#a9e18f;transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav>a:hover::after,.site-header nav>a.is-active::after{transform:scaleX(1)}
.hero-visual{animation:hero-drift 17s ease-in-out infinite alternate}.hero-content .eyebrow{animation:hero-rise .6s both}.hero-content h1{animation:hero-rise .8s .1s both}.hero-copy{animation:hero-rise .8s .22s both}.hero-actions{animation:hero-rise .8s .34s both}.hero-index{animation:hero-rise .8s .5s both}@keyframes hero-drift{to{transform:scale(1.10) translate3d(-1.5%,1%,0)}}@keyframes hero-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.js-motion .reveal{opacity:0;transform:translateY(32px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}
.area-card:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(450px circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(150,224,131,.15),transparent 65%);opacity:0;transition:opacity .3s}.area-card:hover:before{opacity:1}.area-card>span,.area-card>div{position:relative;z-index:1}.area-card b{transition:transform .25s,color .25s}.area-card:hover b{color:#b6f3a0;transform:translateX(7px)}
.service-grid article{position:relative;transition:background .3s,transform .3s}.service-grid article:hover{background:#287b0e;transform:translateY(-6px);z-index:1}.method-steps article{transition:padding-left .3s,background .3s}.method-steps article:hover{padding-left:14px;background:rgba(42,117,15,.045)}.button,.portal-link,.values span{transition:transform .25s,background .25s,color .25s,box-shadow .25s}.button:hover{box-shadow:0 12px 24px rgba(0,0,0,.13)}.button:active{transform:translateY(0) scale(.98)}.values span:hover{background:var(--green);color:#fff;transform:translateY(-3px)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a1e38a;outline-offset:4px}
.faq{background:#eaf1e7}.faq-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw}.faq h2{font:600 clamp(2.2rem,4vw,4.3rem)/1.1 var(--display);letter-spacing:-.05em;margin:0}.faq-lead{color:#657065;margin-top:24px;max-width:400px}.faq-list{border-top:1px solid rgba(16,23,18,.18)}.faq-list details{border-bottom:1px solid rgba(16,23,18,.18)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:25px 4px;font:600 1.08rem/1.5 var(--display)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:1.6rem;font-weight:400;color:var(--green);transition:transform .25s}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{margin:0 35px 26px 4px;color:#556254;max-width:650px;line-height:1.7}.faq-contact{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid var(--green);margin-top:22px;padding-bottom:7px;font-weight:700;color:var(--green)}
.quick-actions{position:fixed;right:20px;bottom:24px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:9px}.quick-actions a,.quick-actions button{display:inline-flex;align-items:center;gap:9px;font:700 .79rem var(--sans);border:0;cursor:pointer;border-radius:40px;padding:12px 15px;box-shadow:0 8px 30px rgba(0,0,0,.18)}.quick-quote{background:#1e6c00;color:#fff}.quick-top{background:#fff;color:#154607}.quick-top[hidden]{display:none}.quick-actions a:hover,.quick-actions button:hover{transform:translateY(-3px)}
@media(max-width:900px){.faq-wrap{grid-template-columns:1fr}.site-header.is-scrolled nav{top:0}.site-header nav{z-index:3}.site-header .menu-toggle{position:relative;z-index:4}.quick-actions{right:13px;bottom:15px}.quick-actions a,.quick-actions button{padding:10px 12px;font-size:.72rem}}@media(max-width:580px){.hero{min-height:740px}.quick-actions{bottom:12px}.faq-list summary{font-size:1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
