:root { --brand-green:#3CA734; --brand-green-dark:#2e8a28; --brand-green-light:#e8f5e6; --brand-black:#0f172a; --brand-white:#ffffff; --brand-gray:#f8fafc; --brand-dark-gray:#334155; --brand-text-secondary:#64748b; --brand-text-body:#475569; --brand-text-muted:#94a3b8; --brand-border:#e8f5e9; --shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05); --shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1); --shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1); --shadow-glow:0 0 20px rgba(60,167,52,0.25); --radius:16px; --radius-sm:12px; }
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Inter',system-ui,-apple-system,sans-serif; line-height:1.7; color:var(--brand-dark-gray); background:var(--brand-white); -webkit-font-smoothing:antialiased; margin:0; padding:0; }
img { max-width:100%; height:auto; display:block; }
a { color:var(--brand-green); text-decoration:none; transition:all .2s ease; }
a:hover { opacity:.85; }
.btn-whatsapp { display:inline-flex; align-items:center; gap:.65rem; background:linear-gradient(135deg,#25d366,#128c7e); color:#fff!important; padding:1rem 2.2rem; border-radius:50px; font-weight:800; font-size:1.05rem; box-shadow:0 6px 24px rgba(37,211,102,.35),0 0 0 3px rgba(37,211,102,.15); transition:all .25s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden; }
.btn-whatsapp::before { content:''; width:22px; height:22px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z'/%3E%3C/svg%3E") no-repeat center/contain; flex-shrink:0; }
.btn-whatsapp:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 10px 32px rgba(37,211,102,.45),0 0 0 5px rgba(37,211,102,.2); }
.btn-whatsapp:active { transform:translateY(-1px) scale(.98); }
.hero { background:url('hero.jpg') center/cover no-repeat; color:var(--brand-black); padding:4rem 1rem 4rem; text-align:left; position:relative; overflow:hidden; }
.hero::before { content:''; position:absolute; inset:0; background:rgba(255,255,255,.88); z-index:0; }
.hero::after { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 20%,rgba(60,167,52,.25) 0%,transparent 50%),radial-gradient(circle at 85% 80%,rgba(60,167,52,.15) 0%,transparent 40%),radial-gradient(circle at 15% 75%,rgba(46,138,40,.1) 0%,transparent 35%); pointer-events:none; z-index:0; }
.hero-orb { position:absolute; border-radius:50%; filter:blur(70px); pointer-events:none; z-index:0; animation:floatOrb 12s ease-in-out infinite; }
.hero-orb:nth-of-type(1) { width:400px; height:400px; background:rgba(60,167,52,.22); top:-100px; left:-80px; animation-delay:0s; }
.hero-orb:nth-of-type(2) { width:320px; height:320px; background:rgba(60,167,52,.15); bottom:5%; right:-60px; animation-delay:-4s; }
.hero-orb:nth-of-type(3) { width:240px; height:240px; background:rgba(46,138,40,.18); top:35%; left:30%; animation-delay:-7s; }
.hero-orb:nth-of-type(4) { width:180px; height:180px; background:rgba(60,167,52,.12); top:10%; right:20%; animation-delay:-9s; }
@keyframes floatOrb { 0%,100% { transform:translate(0,0) scale(1); } 33% { transform:translate(20px,-30px) scale(1.05); } 66% { transform:translate(-15px,15px) scale(.95); } }
.hero-grid { position:absolute; inset:0; background-image:radial-gradient(rgba(60,167,52,.06) 1px,transparent 1px); background-size:40px 40px; pointer-events:none; z-index:0; }
.hero-inner { position:relative; max-width:1200px; margin:0 auto; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.hero-text { position:relative; z-index:1; }
.hero-img { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; }
.hero-img img { width:100%; max-width:480px; height:auto; border-radius:var(--radius); filter:drop-shadow(0 20px 40px rgba(0,0,0,.15)); }
.hero h1 { font-size:clamp(1.8rem,5vw,2.8rem); font-weight:900; margin-bottom:1.25rem; line-height:1.15; letter-spacing:-.02em; text-shadow:0 2px 12px rgba(255,255,255,.9),0 1px 3px rgba(255,255,255,.7); }
.hero h1 span { color:var(--brand-green); text-shadow:none; }
.hero p { font-size:1.15rem; margin-bottom:2.5rem; color:var(--brand-dark-gray); max-width:520px; font-weight:500; text-shadow:0 1px 8px rgba(255,255,255,.8); }
.hero-badges { display:flex; gap:.6rem; flex-wrap:wrap; margin-bottom:2rem; }
.cta-bar { background:linear-gradient(135deg,#1a5c15,var(--brand-green-dark),var(--brand-green)); padding:3rem 1.5rem; text-align:center; position:relative; overflow:hidden; }
.cta-bar::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(255,255,255,.06) 0%,transparent 50%); pointer-events:none; }
.cta-bar h3 { color:var(--brand-white); font-size:clamp(1.3rem,3vw,1.7rem); font-weight:900; margin-bottom:.5rem; position:relative; z-index:1; }
.cta-bar p { color:rgba(255,255,255,.92); margin-bottom:1.5rem; font-size:1rem; max-width:480px; margin-left:auto; margin-right:auto; position:relative; z-index:1; }
.cta-bar .btn-primary { background:linear-gradient(135deg,#ffffff,#f0fdf4); color:var(--brand-green-dark)!important; box-shadow:0 6px 24px rgba(0,0,0,.25),0 0 0 4px rgba(255,255,255,.2); padding:1.1rem 2.6rem; font-size:1.05rem; position:relative; z-index:1; }
.cta-bar .btn-primary::before { color:var(--brand-green-dark); }
.cta-bar .btn-primary:hover { background:#ffffff; box-shadow:0 10px 32px rgba(0,0,0,.3),0 0 0 6px rgba(255,255,255,.3); transform:translateY(-3px) scale(1.03); }
@media (max-width:768px) { .hero-inner { grid-template-columns:1fr; text-align:center; } .hero { padding-top:1.75rem; } .hero p { margin-left:auto; margin-right:auto; } .hero-badges { justify-content:center; } .hero-text img { margin:0 auto 1.25rem; } .hero-img { order:1; } .hero-img img { max-width:280px; } }
.hero-content { position:relative; max-width:800px; margin:0 auto; z-index:1; text-align:center; }
.hero-content p { max-width:640px; margin-left:auto; margin-right:auto; }
.hero-content .hero-badges { justify-content:center; }
.badge { display:flex; align-items:center; gap:.35rem; font-size:.72rem; font-weight:700; background:var(--brand-white); border:1.5px solid var(--brand-green); padding:.35rem .85rem; border-radius:50px; color:var(--brand-green); box-shadow:0 2px 6px rgba(60,167,52,.12); }
.badge svg { width:14px; height:14px; }
.btn-primary { display:inline-flex; align-items:center; gap:.6rem; background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark)); color:var(--brand-white)!important; padding:1.15rem 2.8rem; border-radius:50px; font-weight:800; font-size:1.05rem; box-shadow:var(--shadow-glow); transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease; position:relative; overflow:hidden; }
.btn-primary::before { content:'→'; font-size:1.3rem; line-height:1; transition:transform .25s ease; order:1; }
.btn-primary:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 0 35px rgba(60,167,52,.5); }
.btn-primary:hover::before { transform:translateX(4px); }
.btn-primary:active { transform:translateY(-1px) scale(.98); }
section { padding:5rem 1rem; }
.container { max-width:1200px; margin:0 auto; padding:0 1rem; }
.section-title { font-size:clamp(1.6rem,4vw,2.25rem); font-weight:900; color:var(--brand-black); text-align:center; margin-bottom:.75rem; letter-spacing:-.02em; }
.section-title span { color:var(--brand-green); }
.section-subtitle { text-align:center; color:var(--brand-text-secondary); margin-bottom:3.5rem; font-size:1.05rem; max-width:560px; margin-left:auto; margin-right:auto; }
.sobre { background:linear-gradient(180deg,var(--brand-gray) 0%,var(--brand-white) 100%); position:relative; overflow:hidden; }
.sobre::before { content:''; position:absolute; top:-100px; right:-100px; width:300px; height:300px; background:rgba(60,167,52,.06); border-radius:50%; filter:blur(60px); pointer-events:none; }
.sobre-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.sobre-text { position:relative; z-index:1; }
.sobre-text p { margin-bottom:1.25rem; font-size:1.05rem; color:var(--brand-text-body); line-height:1.8; }
.sobre-text p strong { color:var(--brand-green); }
.sobre-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:2.5rem; }
.stat { background:var(--brand-white); padding:1.5rem 1rem; border-radius:var(--radius); text-align:center; box-shadow:var(--shadow); border:1px solid var(--brand-border); transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s ease; position:relative; overflow:hidden; }
.stat::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--brand-green),var(--brand-green-dark)); border-radius:var(--radius) var(--radius) 0 0; }
.stat:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--brand-green-light); }
.stat-number { font-size:2.2rem; font-weight:900; color:var(--brand-green); line-height:1; }
.stat-label { font-size:.8rem; color:var(--brand-text-secondary); margin-top:.6rem; font-weight:600; }
.sobre-img-wrap { position:relative; z-index:1; }
.sobre-img-wrap::before { content:''; position:absolute; top:1rem; left:1rem; right:-1rem; bottom:-1rem; background:linear-gradient(135deg,var(--brand-green-light),var(--brand-border)); border-radius:var(--radius); z-index:-1; }
.sobre-img-wrap img { width:100%; height:100%; object-fit:cover; border-radius:var(--radius); box-shadow:var(--shadow-lg); display:block; }
.frota-carousel { position:relative; overflow:hidden; border-radius:var(--radius); }
.frota-track { display:flex; transition:transform .5s cubic-bezier(.25,.46,.45,.94); }
.frota-slide { flex:0 0 calc(100% / 3); padding:0 .5rem; cursor:pointer; }
.frota-slide img { width:100%; height:280px; object-fit:cover; border-radius:var(--radius); box-shadow:var(--shadow); transition:transform .3s; }
@media (max-width:992px) { .frota-slide { flex:0 0 calc(100% / 2); } .frota-slide img { height:240px; } }
@media (max-width:768px) { .frota-slide { flex:0 0 100%; } .frota-slide img { height:260px; } }
.frota-slide:hover img { transform:scale(1.02); }
.frota-nav { position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; background:rgba(255,255,255,.9); border:none; border-radius:50%; font-size:1.8rem; color:var(--brand-green); cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow); transition:background .2s,transform .2s; z-index:2; }
.frota-nav:hover { background:var(--brand-white); transform:translateY(-50%) scale(1.1); }
.frota-prev { left:1rem; }
.frota-next { right:1rem; }
.frota-dots { display:flex; justify-content:center; gap:.5rem; margin-top:1.25rem; }
.frota-dot { width:10px; height:10px; border-radius:50%; background:var(--brand-border); border:2px solid transparent; cursor:pointer; transition:background .2s,transform .2s; }
.frota-dot.active { background:var(--brand-green); transform:scale(1.2); }
.lightbox { position:fixed; inset:0; background:rgba(0,0,0,.92); display:none; align-items:center; justify-content:center; z-index:10000; padding:2rem; }
.lightbox.active { display:flex; }
.lightbox-img { max-width:90vw; max-height:85vh; border-radius:var(--radius-sm); object-fit:contain; }
.lightbox-close { position:absolute; top:1.5rem; right:1.5rem; width:44px; height:44px; background:rgba(255,255,255,.15); border:none; border-radius:50%; color:var(--brand-white); font-size:1.8rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s; }
.lightbox-close:hover { background:rgba(255,255,255,.3); }
.lightbox-prev,.lightbox-next { position:absolute; top:50%; transform:translateY(-50%); width:56px; height:56px; background:rgba(255,255,255,.15); border:none; border-radius:50%; color:var(--brand-white); font-size:2rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s,transform .2s; }
.lightbox-prev:hover,.lightbox-next:hover { background:rgba(255,255,255,.3); transform:translateY(-50%) scale(1.1); }
.lightbox-prev { left:1rem; }
.lightbox-next { right:1rem; }
@media (max-width:768px) { .frota-slide img { height:260px; } .lightbox-prev,.lightbox-next { width:44px; height:44px; font-size:1.5rem; } }
.servicos-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:1.5rem; }
.servico-card { background:var(--brand-white); border:1px solid var(--brand-border); border-radius:var(--radius); padding:1.5rem; text-align:center; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s ease; box-shadow:var(--shadow-sm); flex:0 1 260px; max-width:300px; }
.servico-card:hover { transform:translateY(-8px); border-color:var(--brand-green-light); box-shadow:var(--shadow-lg),var(--shadow-glow); }
.servico-card img { border-radius:var(--radius-sm); width:100%; margin-bottom:1.25rem; }
.servico-card h3 { font-size:1.15rem; font-weight:800; margin-bottom:.5rem; color:var(--brand-black); }
.servico-card p { font-size:.9rem; color:var(--brand-text-secondary); line-height:1.6; }
.diferenciais { background:url('hero1.jpg') center/cover no-repeat; color:var(--brand-white); position:relative; overflow:hidden; }
.diferenciais::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(10,46,14,.92) 0%,rgba(26,107,21,.88) 50%,rgba(10,46,14,.92) 100%); z-index:0; }
.diferenciais::after { content:''; position:absolute; inset:0; background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.12) 0%,transparent 45%),radial-gradient(circle at 75% 75%,rgba(255,255,255,.06) 0%,transparent 40%); pointer-events:none; z-index:0; }
.dif-particle { position:absolute; border-radius:50%; background:rgba(255,255,255,.3); pointer-events:none; z-index:0; animation:floatDif 7s ease-in-out infinite; }
.dif-particle:nth-of-type(1) { width:6px; height:6px; top:15%; left:10%; animation-delay:0s; }
.dif-particle:nth-of-type(2) { width:10px; height:10px; top:55%; left:20%; animation-delay:-2s; }
.dif-particle:nth-of-type(3) { width:8px; height:8px; top:25%; left:80%; animation-delay:-4s; }
.dif-particle:nth-of-type(4) { width:12px; height:12px; top:75%; left:70%; animation-delay:-1s; }
.dif-particle:nth-of-type(5) { width:5px; height:5px; top:85%; left:40%; animation-delay:-5s; }
@keyframes floatDif { 0%,100% { transform:translateY(0) scale(1); opacity:.2; } 50% { transform:translateY(-20px) scale(1.3); opacity:.45; } }
.diferenciais .container { position:relative; z-index:1; }
.diferenciais .section-title { color:var(--brand-white); text-shadow:0 2px 8px rgba(0,0,0,.2); }
.diferenciais .section-subtitle { color:rgba(255,255,255,.85); text-shadow:0 1px 4px rgba(0,0,0,.15); }
.diferenciais-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:2rem; margin-top:2rem; }
.diferencial { text-align:center; padding:2rem 1.5rem; background:var(--brand-white); border:1px solid rgba(255,255,255,.25); border-radius:var(--radius); box-shadow:0 8px 32px rgba(0,0,0,.15); transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease; }
.diferencial:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(0,0,0,.25); }
.diferencial-icon { width:64px; height:64px; background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark)); border-radius:16px; display:flex; align-items:center; justify-content:center; margin:0 auto 1.25rem; transition:transform .3s; box-shadow:0 4px 15px rgba(60,167,52,.4); }
.diferencial:hover .diferencial-icon { transform:scale(1.1) rotate(-4deg); }
.diferencial-icon svg { width:28px; height:28px; fill:var(--brand-white); }
.diferencial h3 { font-size:1.1rem; font-weight:800; margin-bottom:.5rem; color:var(--brand-black); }
.diferencial p { font-size:.9rem; color:var(--brand-text-secondary); }
.depoimentos-carousel { position:relative; overflow:hidden; }
.depoimentos-track { display:flex; transition:transform .5s cubic-bezier(.34,1.56,.64,1); }
.depoimento-slide { flex:0 0 calc(100% / 3); padding:0 .75rem; }
.depoimento { background:var(--brand-white); border:1px solid var(--brand-border); padding:2rem; border-radius:var(--radius); box-shadow:var(--shadow-sm); transition:transform .3s,box-shadow .3s; position:relative; height:100%; }
.depoimento::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--brand-green),var(--brand-green-dark)); border-radius:var(--radius) var(--radius) 0 0; }
.depoimento:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.depoimento-stars { color:#fbbf24; font-size:1.1rem; margin-bottom:.75rem; letter-spacing:2px; }
.depoimento-text { font-style:italic; margin-bottom:1.25rem; font-size:.95rem; color:var(--brand-text-body); line-height:1.7; }
.depoimento-author { font-weight:800; color:var(--brand-black); font-size:.9rem; }
.depoimento-date { font-size:.8rem; color:var(--brand-text-muted); margin-top:.25rem; }
.dep-nav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; background:var(--brand-white); border:1px solid var(--brand-border); color:var(--brand-green); font-size:1.4rem; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:var(--shadow); transition:all .2s; z-index:2; }
.dep-nav:hover { background:var(--brand-green); color:var(--brand-white); transform:translateY(-50%) scale(1.1); }
.dep-prev { left:.5rem; }
.dep-next { right:.5rem; }
.dep-dots { display:flex; justify-content:center; gap:.5rem; margin-top:1.5rem; }
.dep-dot { width:10px; height:10px; border-radius:50%; background:var(--brand-border); cursor:pointer; transition:all .3s; border:none; padding:0; }
.dep-dot.active { background:var(--brand-green); transform:scale(1.2); }
@media (max-width:992px) { .depoimento-slide { flex:0 0 calc(100% / 2); } }
@media (max-width:768px) { .depoimento-slide { flex:0 0 100%; } }
.faq { background:var(--brand-gray); }
.faq-item { background:var(--brand-white); border-radius:var(--radius-sm); margin-bottom:.75rem; overflow:hidden; box-shadow:var(--shadow-sm); border:1px solid var(--brand-border); transition:box-shadow .2s; }
.faq-item:hover { box-shadow:var(--shadow); }
.faq-question { padding:1.25rem 1.5rem; font-weight:700; cursor:pointer; display:flex; justify-content:space-between; align-items:center; color:var(--brand-black); font-size:.95rem; transition:color .2s; }
.faq-question:hover { color:var(--brand-green); }
.faq-question::after { content:'+'; font-size:1.5rem; color:var(--brand-green); transition:transform .3s cubic-bezier(.34,1.56,.64,1); font-weight:400; }
.faq-answer { padding:0 1.5rem; max-height:0; overflow:hidden; transition:max-height .4s ease,padding .4s ease; }
.faq-item.active .faq-answer { padding:0 1.5rem 1.25rem; max-height:300px; }
.faq-item.active .faq-question::after { transform:rotate(45deg); }
.faq-answer p { color:var(--brand-text-body); font-size:.95rem; line-height:1.7; }
.breadcrumbs { background:var(--brand-white); border-bottom:1px solid var(--brand-border); padding:.75rem 0; font-size:.85rem; color:var(--brand-text-secondary); }
.breadcrumbs ol { list-style:none; display:flex; align-items:center; gap:.5rem; margin:0; padding:0; }
.breadcrumbs li { display:flex; align-items:center; gap:.5rem; }
.breadcrumbs li:not(:last-child)::after { content:'/'; color:var(--brand-border); }
.breadcrumbs a { color:var(--brand-green); text-decoration:none; font-weight:600; }
.breadcrumbs a:hover { text-decoration:underline; }
.breadcrumbs span { color:var(--brand-black); font-weight:600; }

.explore-section { background:linear-gradient(180deg,var(--brand-gray) 0%,var(--brand-white) 100%); padding:3.5rem 1rem; }
.explore-tags { display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; max-width:1100px; margin:0 auto 2.5rem; }
.explore-tag { display:inline-block; font-size:.8rem; font-weight:600; color:var(--brand-green-dark); background:var(--brand-white); border:1.5px solid var(--brand-border); padding:.4rem .85rem; border-radius:50px; transition:all .2s ease; white-space:nowrap; }
.explore-tag:hover { background:var(--brand-green); color:var(--brand-white); border-color:var(--brand-green); transform:translateY(-2px); box-shadow:0 4px 12px rgba(60,167,52,.25); }
.explore-tag--home { background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark)); color:var(--brand-white); border-color:transparent; }
.explore-cta { text-align:center; }
.btn-explore-cta { display:inline-flex; align-items:center; gap:.65rem; background:linear-gradient(135deg,#25d366,#128c7e); color:#fff!important; padding:1.1rem 2.5rem; border-radius:50px; font-weight:800; font-size:1.05rem; box-shadow:0 6px 24px rgba(37,211,102,.35),0 0 0 3px rgba(37,211,102,.15); transition:all .25s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden; }
.btn-explore-cta svg { width:22px; height:22px; flex-shrink:0; }
.btn-explore-cta:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 10px 32px rgba(37,211,102,.45),0 0 0 5px rgba(37,211,102,.2); }
.btn-explore-cta:active { transform:translateY(-1px) scale(.98); }
.explore-cta-note { margin-top:.75rem; font-size:.85rem; color:var(--brand-text-secondary); }
.feature-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:2rem; }
.feature-card { background:var(--brand-white); border-radius:var(--radius); padding:1.5rem; box-shadow:var(--shadow-sm); border:1px solid var(--brand-border); text-align:center; transition:transform .3s,box-shadow .3s; }
.feature-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--brand-green-light); }
.feature-icon { width:56px; height:56px; border-radius:14px; background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark)); display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; color:#fff; font-size:1.4rem; overflow:hidden; flex-shrink:0; }
.feature-icon svg { width:26px; height:26px; max-width:26px; max-height:26px; stroke:#fff; stroke-width:2; flex-shrink:0; }
.feature-card h4 { font-size:1.05rem; font-weight:800; color:var(--brand-black); margin-bottom:.5rem; }
.feature-card p { font-size:.88rem; color:var(--brand-text-secondary); line-height:1.6; }
.sobre-compact { text-align:center; max-width:800px; margin:0 auto 2.5rem; font-size:1.1rem; color:var(--brand-text-body); line-height:1.8; }
@media (max-width:768px) { .feature-cards { grid-template-columns:1fr; } }
.onde-atendemos { background:var(--brand-gray); }
.onde-texto { text-align:center; max-width:760px; margin:0 auto 2.5rem; color:var(--brand-text-body); font-size:1.05rem; line-height:1.8; }
.onde-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; max-width:900px; margin:0 auto; }
.onde-tag,
a.onde-tag { display:inline-block; text-decoration:none; background:var(--brand-white); border:1px solid var(--brand-border); color:var(--brand-green); padding:.45rem 1rem; border-radius:50px; font-size:.85rem; font-weight:600; box-shadow:var(--shadow-sm); transition:all .2s; }
.onde-tag:hover,
a.onde-tag:hover { background:var(--brand-green); color:var(--brand-white); transform:translateY(-2px); box-shadow:var(--shadow); }
.contato-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; max-width:1000px; margin:0 auto; align-items:start; }
.back-to-top { position:fixed; bottom:24px; left:24px; width:48px; height:48px; background:var(--brand-white); border:1.5px solid var(--brand-green); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:var(--shadow); z-index:9998; opacity:0; visibility:hidden; transition:opacity .3s,visibility .3s,transform .2s; transform:translateY(10px); }
.back-to-top.visible { opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover { background:var(--brand-green); transform:translateY(-3px); }
.back-to-top svg { width:20px; height:20px; stroke:var(--brand-green); transition:stroke .2s; }
.back-to-top:hover svg { stroke:var(--brand-white); }
.contato-info { background:var(--brand-white); padding:2rem; border-radius:var(--radius); box-shadow:var(--shadow-sm); border:1px solid var(--brand-border); }
.contato-info h3 { font-size:1.5rem; font-weight:800; margin-bottom:1.5rem; color:var(--brand-black); }
.contato-item { display:flex; align-items:flex-start; gap:1rem; margin-bottom:1rem; padding:.75rem; border-radius:var(--radius-sm); transition:background .2s; }
.contato-item:hover { background:var(--brand-gray); }
.contato-item svg { width:22px; height:22px; fill:var(--brand-green); flex-shrink:0; margin-top:2px; }
.contato-item strong { display:block; color:var(--brand-black); margin-bottom:.15rem; font-weight:700; font-size:.85rem; }
.contato-item span,.contato-item a { color:var(--brand-text-secondary); font-size:.9rem; }
.contato-whatsapp { margin-top:1rem; display:flex; justify-content:center; }
.mapa-wrap { border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); border:1px solid var(--brand-border); height:100%; min-height:400px; }
.mapa { width:100%; height:100%; border:0; display:block; }
.cta-banner { background:linear-gradient(-45deg,#4fd147,var(--brand-green),#1a6b15,#0d4a0a,var(--brand-green)); background-size:500% 500%; color:var(--brand-white); text-align:center; padding:5rem 1rem; position:relative; overflow:hidden; animation:gradientShift 4s ease infinite; }
@keyframes gradientShift { 0% { background-position:0% 50%; } 50% { background-position:100% 50%; } 100% { background-position:0% 50%; } }
.cta-banner::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.25) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.15) 0%,transparent 35%),radial-gradient(circle at 50% 50%,rgba(60,167,52,.3) 0%,transparent 60%); pointer-events:none; z-index:0; }
.cta-particle { position:absolute; border-radius:50%; background:rgba(255,255,255,.45); pointer-events:none; z-index:0; animation:floatParticle 5s ease-in-out infinite; }
.cta-particle:nth-of-type(1) { width:10px; height:10px; top:20%; left:15%; animation-delay:0s; }
.cta-particle:nth-of-type(2) { width:16px; height:16px; top:60%; left:25%; animation-delay:-1.5s; }
.cta-particle:nth-of-type(3) { width:8px; height:8px; top:30%; left:70%; animation-delay:-3s; }
.cta-particle:nth-of-type(4) { width:12px; height:12px; top:70%; left:80%; animation-delay:-4.5s; }
.cta-particle:nth-of-type(5) { width:18px; height:18px; top:45%; left:50%; animation-delay:-2s; }
.cta-particle:nth-of-type(6) { width:6px; height:6px; top:15%; left:90%; animation-delay:-5s; }
@keyframes floatParticle { 0%,100% { transform:translateY(0) scale(1); opacity:.35; } 50% { transform:translateY(-35px) scale(1.4); opacity:.7; } }
.cta-inner { position:relative; z-index:1; max-width:680px; margin:0 auto; }
.cta-badge-urgency { display:inline-flex; align-items:center; gap:.5rem; background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.35); backdrop-filter:blur(8px); color:var(--brand-white); font-size:.85rem; font-weight:700; padding:.5rem 1.2rem; border-radius:50px; margin-bottom:1.5rem; animation:pulseUrgency 2s ease-in-out infinite; }
@keyframes pulseUrgency { 0%,100% { box-shadow:0 0 0 0 rgba(255,255,255,.3); } 50% { box-shadow:0 0 0 8px rgba(255,255,255,0); } }
.cta-badge-urgency::before { content:''; width:8px; height:8px; background:#ef4444; border-radius:50%; display:inline-block; }
.cta-banner h2 { font-size:clamp(1.8rem,5vw,2.6rem); margin-bottom:1rem; font-weight:900; line-height:1.15; position:relative; z-index:1; }
.cta-subhead { font-size:1.15rem; opacity:.95; margin-bottom:1.5rem; line-height:1.6; }
.cta-benefits { display:flex; justify-content:center; gap:1.5rem; flex-wrap:wrap; margin-bottom:2rem; }
.cta-benefit { display:flex; align-items:center; gap:.4rem; font-size:.95rem; font-weight:600; color:rgba(255,255,255,.95); }
.cta-benefit svg { width:20px; height:20px; fill:var(--brand-white); }
.cta-btn-wrap { position:relative; display:inline-block; }
.cta-btn-wrap::before { content:'👇'; position:absolute; bottom:-1.8rem; left:50%; transform:translateX(-50%); font-size:1.4rem; animation:bounceDown 1.5s ease-in-out infinite; }
@keyframes bounceDown { 0%,100% { transform:translateX(-50%) translateY(0); } 50% { transform:translateX(-50%) translateY(6px); } }
.cta-banner .btn-primary { background:linear-gradient(135deg,#ffffff,#f0fdf4); color:var(--brand-green)!important; padding:1.3rem 3rem; font-size:1.15rem; box-shadow:0 8px 30px rgba(0,0,0,.25),0 0 0 4px rgba(255,255,255,.2); position:relative; z-index:1; overflow:hidden; display:inline-flex; align-items:center; gap:.6rem; border:2px solid var(--brand-white); }
.cta-banner .btn-primary::before { color:var(--brand-green); }
.cta-banner .btn-primary svg { width:22px; height:22px; fill:var(--brand-green); }
.cta-banner .btn-primary::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(90deg,transparent,rgba(60,167,52,.12),transparent); transition:left .5s; }
.cta-banner .btn-primary:hover::after { left:100%; }
.cta-banner .btn-primary:hover { box-shadow:0 12px 40px rgba(0,0,0,.35),0 0 0 6px rgba(255,255,255,.25); transform:translateY(-4px) scale(1.03); }
.cta-trust { margin-top:1.75rem; display:flex; justify-content:center; gap:2rem; flex-wrap:wrap; }
.cta-trust-item { text-align:center; }
.cta-trust-number { font-size:1.4rem; font-weight:900; color:var(--brand-white); line-height:1; }
.cta-trust-label { font-size:.75rem; color:rgba(255,255,255,.8); margin-top:.25rem; font-weight:500; }
.float-whatsapp { position:fixed; bottom:24px; right:24px; width:64px; height:64px; background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark)); border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 30px rgba(60,167,52,.4); z-index:9999; animation:pulse 2.5s infinite; transition:transform .2s; }
.float-whatsapp:hover { transform:scale(1.1); }
.float-whatsapp svg { width:30px; height:30px; fill:var(--brand-white); }
@keyframes pulse { 0% { box-shadow:0 0 0 0 rgba(60,167,52,.7); } 70% { box-shadow:0 0 0 18px rgba(60,167,52,0); } 100% { box-shadow:0 0 0 0 rgba(60,167,52,0); } }
@media (max-width:768px) { .hero h1 { font-size:1.8rem; } .sobre-grid,.contato-grid { grid-template-columns:1fr; gap:2rem; } .contato-info { padding:1.5rem; }  .mapa-wrap { min-height:300px; } .sobre-stats { grid-template-columns:repeat(3,1fr); gap:.5rem; } .stat { padding:1rem .5rem; } .stat-number { font-size:1.6rem; } .sobre-img-wrap::before { display:none; } .diferenciais-grid { grid-template-columns:1fr; } }
