:root{--fl-green:#0f6f46;--fl-deep:#0b2f24;--fl-ink:#173a2d;--fl-soft:#eef6f1;--fl-line:#dce8e1;--fl-white:#fff;--fl-shadow:0 12px 36px rgba(13,47,36,.10)}
.fl-el-header{position:relative;z-index:999;background:#fff;border-bottom:1px solid rgba(16,70,49,.10)}.fl-el-header.is-sticky{position:sticky;top:0}.admin-bar .fl-el-header.is-sticky{top:32px}.fl-el-header__inner{width:min(1180px,calc(100% - 40px));min-height:88px;margin:auto;display:flex;align-items:center;gap:28px}.fl-el-header__logo{display:flex;align-items:center;flex:0 0 auto}.fl-el-header__logo img{display:block;height:auto;max-width:100%}.fl-el-nav{margin-left:auto}.fl-el-nav__list,.fl-el-nav .menu{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.fl-el-nav li{position:relative}.fl-el-nav a{text-decoration:none;font-weight:650;font-size:15px;line-height:1.2}.fl-el-nav .sub-menu{position:absolute;left:-18px;top:calc(100% + 18px);min-width:260px;padding:12px;background:#fff;border:1px solid var(--fl-line);border-radius:12px;box-shadow:var(--fl-shadow);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.fl-el-nav li:hover>.sub-menu,.fl-el-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.fl-el-nav .sub-menu a{display:block;padding:10px 12px;border-radius:8px}.fl-el-nav .sub-menu a:hover{background:var(--fl-soft)}.fl-el-header__cta,.fl-el-header__mobile-cta{background:var(--fl-green);color:#fff!important;padding:13px 18px;border-radius:999px;text-decoration:none;font-weight:750;white-space:nowrap}.fl-el-header__mobile-cta{display:none}.fl-el-menu-toggle{display:none;margin-left:auto;width:46px;height:46px;border:1px solid var(--fl-line);border-radius:12px;background:#fff;padding:11px}.fl-el-menu-toggle span{display:block;height:2px;background:var(--fl-ink);margin:5px 0;transition:.2s}
.fl-el-footer{padding:64px 0 24px}.fl-el-footer__grid,.fl-el-footer__legal,.fl-el-footer__bottom{width:min(1180px,calc(100% - 40px));margin:auto}.fl-el-footer__grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr;gap:44px}.fl-el-footer__logo{display:block;width:min(250px,100%);height:auto;margin-bottom:20px}.fl-el-footer h3{font-size:16px;margin:0 0 18px;color:inherit}.fl-el-footer p{opacity:.86;line-height:1.7}.fl-el-footer a{text-decoration:none}.fl-el-footer__menu{list-style:none;padding:0;margin:0}.fl-el-footer__menu li{margin:0 0 11px}.fl-el-footer__social{display:flex;gap:18px;flex-wrap:wrap}.fl-el-footer__legal{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;margin-top:40px}.fl-el-footer__legal button{border:0;background:none;color:inherit;padding:0;cursor:pointer;font:inherit}.fl-el-footer__bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.10);padding-top:18px;margin-top:20px;font-size:13px;opacity:.72}
.fl-el-hero{position:relative;background-size:cover;background-position:center;color:#fff;display:flex;align-items:center;overflow:hidden}.fl-el-hero:before{content:"";position:absolute;inset:0}.fl-el-hero__inner{position:relative;z-index:1;width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:64px;align-items:center;padding:88px 0}.fl-el-hero__copy{max-width:720px}.fl-el-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:#77d5a7;margin-bottom:14px}.fl-el-hero h1{font-size:clamp(42px,5.3vw,76px);line-height:1.02;letter-spacing:-.045em;margin:0 0 24px;color:#fff}.fl-el-hero__copy>p{font-size:clamp(18px,2vw,22px);line-height:1.55;max-width:680px;margin:0 0 32px;color:rgba(255,255,255,.86)}.fl-el-actions{display:flex;gap:14px;flex-wrap:wrap}.fl-el-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:800;transition:.2s}.fl-el-button--primary{background:#fff;color:var(--fl-deep)}.fl-el-button--primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.18)}.fl-el-button--secondary{background:rgba(6,36,26,.55);border:2px solid #fff;color:#fff}.fl-el-button--secondary:hover{background:#fff;color:var(--fl-deep)}.fl-el-hero__facts{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fl-el-hero__fact{min-height:150px;padding:24px;border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(3,31,22,.42);backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:flex-end}.fl-el-hero__fact strong{display:block;font-size:18px;margin-bottom:8px}.fl-el-hero__fact span{font-size:14px;line-height:1.5;color:rgba(255,255,255,.78)}
.fl-el-section-heading{max-width:800px}.fl-el-section-heading--center{text-align:center;margin-inline:auto}.fl-el-section-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.08;letter-spacing:-.035em;color:var(--fl-ink);margin:0 0 18px}.fl-el-section-heading p{font-size:18px;line-height:1.65;color:#52675e;margin:0}
.fl-filtered-grid{width:100%}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}.filter-pill{border:1px solid var(--fl-line);background:#fff;color:var(--fl-ink);padding:10px 16px;border-radius:999px;font-weight:700;cursor:pointer;transition:.2s}.filter-pill:hover,.filter-pill.is-active{background:var(--fl-green);border-color:var(--fl-green);color:#fff}.fl-filter-empty{padding:30px;text-align:center;background:var(--fl-soft);border-radius:14px}.service-grid,.project-grid,.fl-team-grid,.fl-clients-block,.fl-testimonials-block{display:grid;gap:24px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fl-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fl-clients-block{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}.fl-testimonials-block{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card,.project-card,.fl-team-card,.testimonial-card{background:#fff;border:1px solid var(--fl-line);border-radius:18px;overflow:hidden;box-shadow:0 4px 18px rgba(17,59,44,.05);transition:transform .22s,box-shadow .22s}.service-card:hover,.project-card:hover,.fl-team-card:hover,.testimonial-card:hover{transform:translateY(-5px);box-shadow:var(--fl-shadow)}.service-card__media,.project-card__media,.fl-team-card__portrait{display:block;overflow:hidden;background:#e9f0ec}.service-card__media img,.project-card__media img,.fl-team-card__portrait img{display:block;width:100%;height:230px;object-fit:cover;transition:transform .3s}.service-card:hover img,.project-card:hover img,.fl-team-card:hover img{transform:scale(1.035)}.service-card__body,.project-card__body,.fl-team-card__body{padding:24px}.service-card h3,.project-card h3,.fl-team-card h3{font-size:21px;line-height:1.25;margin:7px 0 12px}.service-card h3 a,.project-card h3 a,.fl-team-card h3 a{color:var(--fl-ink);text-decoration:none}.service-card p,.project-card p,.fl-team-card p{color:#5c6e66;line-height:1.6}.eyebrow,.fl-eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--fl-green)}.text-link{font-weight:800;color:var(--fl-green);text-decoration:none}.meta-line{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:#65766e}.meta-line span+span:before{content:"·";margin-right:8px}.client-item,.fl-client-item{position:relative;min-height:120px;padding:18px;background:#fff;border:1px solid var(--fl-line);border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:.22s}.client-item img,.fl-client-item img{max-width:100%;max-height:70px;width:auto;height:auto;filter:grayscale(1);opacity:.72;transition:.25s}.client-item:hover,.fl-client-item:hover{transform:translateY(-4px);box-shadow:var(--fl-shadow);border-color:#b7d4c5}.client-item:hover img,.fl-client-item:hover img{filter:none;opacity:1;transform:scale(1.04)}.testimonial-card{padding:26px;display:flex;flex-direction:column;justify-content:space-between;min-height:250px}.testimonial-card__quote{font-size:17px;line-height:1.7;color:#28483b}.testimonial-card__author{display:flex;align-items:center;gap:12px;margin-top:22px}.testimonial-card__author img{width:46px;height:46px;border-radius:50%;object-fit:cover}.testimonial-card__author strong,.testimonial-card__author span{display:block}.testimonial-stars{color:#e0a800}.google-review-shot{display:block;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--fl-line);text-decoration:none;transition:.22s}.google-review-shot:hover{transform:translateY(-4px);box-shadow:var(--fl-shadow)}.google-review-shot img{width:100%;height:auto;display:block}.google-review-shot__caption{padding:16px;display:flex;justify-content:space-between;gap:12px;color:var(--fl-ink)}
.fl-el-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fl-el-process__item{padding:28px;border:1px solid var(--fl-line);border-radius:16px;background:#fff}.fl-el-process__item>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--fl-soft);color:var(--fl-green);font-weight:800}.fl-el-process__item h3{font-size:20px;margin:20px 0 10px;color:var(--fl-ink)}.fl-el-process__item p{margin:0;color:#5c6e66;line-height:1.6}
.fl-contact-links{display:grid;gap:12px}.fl-contact-link{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid var(--fl-line);border-radius:14px;background:#fff;text-decoration:none;color:var(--fl-ink);transition:.2s}.fl-contact-link:hover{transform:translateY(-3px);box-shadow:var(--fl-shadow);border-color:#b7d4c5}.fl-contact-link__icon{width:44px;height:44px;border-radius:12px;background:var(--fl-soft);display:grid;place-items:center;color:var(--fl-green)}.fl-contact-link__icon svg{width:23px;height:23px}.fl-contact-link strong,.fl-contact-link small{display:block}.fl-contact-link small{color:#64776e;margin-top:3px}.fl-contact-social{display:flex;gap:12px;flex-wrap:wrap}.fl-contact-social a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:var(--fl-soft);color:var(--fl-green);text-decoration:none;font-weight:700}.fl-contact-social svg{width:20px;height:20px}
.fl-map{position:relative;min-height:430px;border-radius:18px;overflow:hidden;background:#e9f2ed}.fl-map--compact{min-height:320px}.fl-map__placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:30px;background:linear-gradient(135deg,#eef7f1,#dcece3);z-index:2}.fl-map__placeholder strong{font-size:24px;color:var(--fl-ink)}.fl-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.fl-map.is-loaded .fl-map__placeholder{display:none}
.fl-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:48px}.fl-detail-section{padding-bottom:34px;margin-bottom:34px;border-bottom:1px solid var(--fl-line)}.fl-detail-section h2{font-size:30px;color:var(--fl-ink);margin:0 0 18px}.fl-detail-section p,.fl-detail-list{font-size:17px;line-height:1.75;color:#4e665c}.fl-detail-list{padding-left:20px}.fl-detail-aside{display:flex;flex-direction:column;gap:14px}.fl-meta-card{padding:20px;border-radius:14px;background:var(--fl-soft);border:1px solid var(--fl-line)}.fl-meta-card span,.fl-meta-card strong{display:block}.fl-meta-card span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#668075;margin-bottom:7px}.fl-meta-card strong{color:var(--fl-ink)}.fl-method-list{display:grid;gap:12px}.fl-method-item{padding:16px 18px;border-left:4px solid var(--fl-green);background:var(--fl-soft);border-radius:0 12px 12px 0}.fl-faq details{border:1px solid var(--fl-line);border-radius:12px;padding:16px 18px;margin-bottom:10px}.fl-faq summary{font-weight:800;color:var(--fl-ink);cursor:pointer}.fl-team-meta .fl-detail-section:last-child{border-bottom:0}
.fl-el-current-hero{position:relative;padding:110px max(20px,calc((100vw - 1180px)/2));background:var(--fl-deep);color:#fff;overflow:hidden}.fl-el-current-hero.has-image{background-size:cover;background-position:center}.fl-el-current-hero.has-image:before{content:"";position:absolute;inset:0;background:rgba(4,35,25,.72)}.fl-el-current-hero>div{position:relative;z-index:1;max-width:820px}.fl-el-current-hero h1{font-size:clamp(40px,6vw,72px);line-height:1.04;color:#fff;margin:12px 0 20px}.fl-el-current-hero p{font-size:20px;line-height:1.6;color:rgba(255,255,255,.84)}
.florestare-form,.contact-form{background:#fff;border:1px solid var(--fl-line);border-radius:18px;padding:28px}.florestare-form input,.florestare-form textarea,.florestare-form select,.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #c9d9d0;border-radius:10px;padding:13px 14px;background:#fff}.florestare-form button,.contact-form button{border:0;border-radius:999px;padding:14px 22px;background:var(--fl-green);color:#fff;font-weight:800;cursor:pointer}
@media(max-width:1024px){.fl-el-header__inner{width:min(100% - 28px,1180px);min-height:76px}.fl-el-menu-toggle{display:block;position:relative;z-index:1002}.fl-el-header__cta{display:none}.fl-el-nav{position:fixed;inset:0;background:#fff;padding:100px 24px 34px;overflow:auto;transform:translateX(100%);transition:.25s;z-index:1001;margin:0}.fl-el-header.menu-open .fl-el-nav{transform:none}.fl-el-header.menu-open .fl-el-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.fl-el-header.menu-open .fl-el-menu-toggle span:nth-child(2){opacity:0}.fl-el-header.menu-open .fl-el-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.fl-el-nav__list,.fl-el-nav .menu{display:block}.fl-el-nav li{border-bottom:1px solid var(--fl-line)}.fl-el-nav a{display:block;padding:17px 4px;font-size:20px}.fl-el-nav .sub-menu{position:static;min-width:0;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;padding:0 0 10px 16px;display:none}.fl-el-nav li.submenu-open>.sub-menu{display:block}.fl-el-nav .sub-menu li{border:0}.fl-el-nav .sub-menu a{font-size:16px;padding:10px 4px}.fl-el-header__mobile-cta{display:flex;justify-content:center;margin-top:26px}.fl-el-hero__inner{grid-template-columns:1fr;gap:38px;padding:72px 0}.fl-el-hero__copy{max-width:760px}.fl-el-hero__facts{grid-template-columns:repeat(4,minmax(0,1fr))}.fl-el-hero__fact{min-height:130px;padding:18px}.service-grid,.project-grid,.fl-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-clients-block{grid-template-columns:repeat(4,minmax(0,1fr))}.fl-testimonials-block{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-el-process{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-el-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-detail-grid{grid-template-columns:1fr}.fl-detail-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:782px){.admin-bar .fl-el-header.is-sticky{top:46px}}
@media(max-width:700px){.fl-el-header__inner,.fl-el-hero__inner,.fl-el-footer__grid,.fl-el-footer__legal,.fl-el-footer__bottom{width:calc(100% - 28px)}.fl-el-hero__inner{padding:58px 0}.fl-el-hero h1{font-size:42px}.fl-el-hero__copy>p{font-size:18px}.fl-el-actions{display:grid}.fl-el-button{width:100%}.fl-el-hero__facts{grid-template-columns:1fr 1fr;gap:10px}.fl-el-hero__fact{min-height:126px;padding:16px}.fl-el-hero__fact strong{font-size:16px}.service-grid,.project-grid,.fl-team-grid,.fl-testimonials-block{grid-template-columns:1fr}.fl-clients-block{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-el-process{grid-template-columns:1fr}.fl-el-footer__grid{grid-template-columns:1fr;gap:28px}.fl-el-footer__bottom{display:block}.fl-el-footer__bottom span{display:block;margin-bottom:8px}.fl-detail-aside{grid-template-columns:1fr}.fl-el-current-hero{padding-top:80px;padding-bottom:80px}.filter-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.filter-pill{flex:0 0 auto}}
html.fl-menu-open,html.fl-menu-open body{overflow:hidden}
.fl-client-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.fl-client-card{position:relative;min-height:126px;padding:18px;background:#fff;border:1px solid var(--fl-line);border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none;color:var(--fl-ink);transition:.22s}.fl-client-card__logo{display:flex;align-items:center;justify-content:center;width:100%;height:76px}.fl-client-card__logo img{max-width:100%;max-height:68px;width:auto;height:auto;filter:grayscale(1);opacity:.72;transition:.25s}.fl-client-card__action{position:absolute;left:12px;right:12px;bottom:10px;display:flex;justify-content:center;gap:4px;font-size:12px;font-weight:800;color:var(--fl-green);opacity:0;transform:translateY(6px);transition:.22s}.fl-client-card:hover{transform:translateY(-4px);box-shadow:var(--fl-shadow);border-color:#b7d4c5}.fl-client-card:hover .fl-client-card__logo img{filter:none;opacity:1;transform:scale(1.04) translateY(-8px)}.fl-client-card:hover .fl-client-card__action{opacity:1;transform:none}
.fl-testimonial-source+.fl-testimonial-source{margin-top:44px}.fl-testimonial-source__heading{margin-bottom:20px}.fl-testimonial-source__heading h3{font-size:28px;margin:0 0 8px;color:var(--fl-ink)}.fl-testimonial-source__heading p{margin:0;color:#60736a}.fl-testimonial-grid,.fl-google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.fl-testimonial-card,.fl-google-review-card{background:#fff;border:1px solid var(--fl-line);border-radius:16px;padding:24px;box-shadow:0 4px 18px rgba(17,59,44,.05);transition:.22s}.fl-testimonial-card:hover,.fl-google-review-card:hover{transform:translateY(-4px);box-shadow:var(--fl-shadow)}.fl-testimonial-card blockquote{font-size:17px;line-height:1.7;color:#28483b;margin:0 0 22px}.fl-testimonial-author strong,.fl-testimonial-author span{display:block}.fl-testimonial-author span{font-size:13px;color:#6b7c74;margin-top:4px}.fl-google-review-card{padding:0;overflow:hidden}.fl-google-review-card>img{display:block;width:100%;height:auto}.fl-google-review-card__text{padding:24px}.fl-google-review-card__text p{line-height:1.65}.fl-google-review-card__stars,.fl-google-summary__stars{color:#e0a800;letter-spacing:.08em}.fl-google-review-card__footer{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;border-top:1px solid var(--fl-line)}.fl-google-review-card__footer a{font-weight:800;color:var(--fl-green);text-decoration:none}.fl-google-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px 22px;margin-bottom:24px;border-radius:16px;background:var(--fl-soft);border:1px solid var(--fl-line)}.fl-google-summary__rating{font-size:44px;font-weight:800;color:var(--fl-ink)}
@media(max-width:1024px){.fl-client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fl-testimonial-grid,.fl-google-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fl-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-testimonial-grid,.fl-google-review-grid{grid-template-columns:1fr}.fl-google-summary{grid-template-columns:auto 1fr}.fl-google-summary .button{grid-column:1/-1}}

/* Florestare 3.1 — revisão de arquitetura, alinhamento e responsividade */
.elementor-section.fl-section-compact>.elementor-container,.elementor-section.fl-section-tight>.elementor-container,.elementor-section.fl-section-cta>.elementor-container,.elementor-section.fl-contact-layout>.elementor-container{width:100%;max-width:1180px;margin-inline:auto}
.fl-page-hero .fl-el-heading{max-width:900px}.fl-page-hero .fl-el-heading h2{font-size:clamp(38px,5.2vw,64px);line-height:1.07;margin-bottom:18px}.fl-page-hero .fl-el-heading p{max-width:820px;font-size:18px;line-height:1.7}
.fl-section-tight .fl-el-heading{margin-bottom:18px}.fl-section-compact .fl-el-heading{margin-bottom:4px}.fl-el-heading{max-width:850px}.fl-el-heading--center{margin-inline:auto;text-align:center}.fl-el-heading h2{margin:10px 0 16px;font-size:clamp(31px,4vw,50px);line-height:1.12;color:var(--fl-ink)}.fl-el-heading p{margin:0;max-width:780px;color:#526a60;font-size:17px;line-height:1.7}.fl-el-heading--center p{margin-inline:auto}

.fl-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.fl-area-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--fl-line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 5px 20px rgba(13,47,36,.05);transition:transform .22s,box-shadow .22s,border-color .22s}.fl-area-card:hover{transform:translateY(-5px);box-shadow:var(--fl-shadow);border-color:#b9d5c7}.fl-area-card__media{display:block;aspect-ratio:1.42/1;overflow:hidden;background:var(--fl-soft)}.fl-area-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.fl-area-card:hover .fl-area-card__media img{transform:scale(1.045)}.fl-area-card__body{display:flex;flex:1;flex-direction:column;padding:22px}.fl-area-card__meta{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:800;color:var(--fl-green);margin-bottom:9px}.fl-area-card h3{font-size:21px;line-height:1.25;margin:0 0 12px}.fl-area-card h3 a{color:var(--fl-ink);text-decoration:none}.fl-area-card p{margin:0 0 18px;color:#5d7067;line-height:1.62}.fl-area-card .text-link{margin-top:auto}

.fl-editorial{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:58px}.fl-editorial--left .fl-editorial__media{order:-1}.fl-editorial__content{min-width:0}.fl-editorial h2{font-size:clamp(32px,4.5vw,52px);line-height:1.12;color:var(--fl-ink);margin:10px 0 18px}.fl-editorial__lead{font-size:19px;line-height:1.65;color:#405d50;margin:0 0 20px}.fl-editorial__body{color:#586e64;line-height:1.75}.fl-editorial__body p{margin:0 0 16px}.fl-editorial__list{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}.fl-editorial__list li{position:relative;padding:15px 16px 15px 47px;border:1px solid var(--fl-line);border-radius:13px;background:#fff;color:#365448;line-height:1.5}.fl-editorial__list li:before{content:"✓";position:absolute;left:16px;top:14px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--fl-soft);color:var(--fl-green);font-weight:900}.fl-editorial__media{border-radius:20px;overflow:hidden;box-shadow:var(--fl-shadow);aspect-ratio:4/3}.fl-editorial__media img{width:100%;height:100%;object-fit:cover}

.fl-page-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fl-page-card{display:flex;flex-direction:column;min-height:240px;padding:24px;border-radius:17px;background:#fff;border:1px solid var(--fl-line);color:var(--fl-ink);text-decoration:none;transition:.22s}.fl-page-card:hover{transform:translateY(-5px);box-shadow:var(--fl-shadow);border-color:#b3d3c3}.fl-page-card>span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--fl-green);font-weight:800}.fl-page-card h3{font-size:23px;line-height:1.25;margin:12px 0}.fl-page-card p{color:#5e7168;line-height:1.6;margin:0 0 18px}.fl-page-card strong{margin-top:auto;color:var(--fl-green)}

.fl-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:center;border-radius:22px;padding:38px 42px}.fl-cta--green{background:var(--fl-deep);color:#fff}.fl-cta--light{background:var(--fl-soft);color:var(--fl-ink)}.fl-cta h2{font-size:clamp(29px,4vw,46px);line-height:1.12;margin:9px 0 13px;color:inherit}.fl-cta p{max-width:720px;margin:0;line-height:1.65;opacity:.84}.fl-cta__actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.fl-cta--green .fl-el-button--primary{background:#fff;color:var(--fl-deep)}.fl-cta--green .fl-el-button--secondary{border-color:rgba(255,255,255,.65);color:#fff;background:rgba(0,0,0,.12)}

.fl-progressive-actions{display:flex;justify-content:center;margin-top:32px}.fl-show-more{border:1px solid var(--fl-green);border-radius:999px;background:#fff;color:var(--fl-green);padding:13px 24px;font:inherit;font-weight:800;cursor:pointer;transition:.2s}.fl-show-more:hover{background:var(--fl-green);color:#fff;transform:translateY(-2px)}.fl-show-more[hidden],.fl-progressive-item[hidden]{display:none!important}

/* formulário com hierarquia e alinhamento consistentes */
.fl-form{display:grid;gap:18px;padding:28px;border:1px solid var(--fl-line);border-radius:20px;background:#fff;box-shadow:0 8px 30px rgba(13,47,36,.06)}.fl-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fl-field{display:grid;gap:7px;min-width:0}.fl-field label{font-size:14px;font-weight:800;color:var(--fl-ink)}.fl-field input,.fl-field select,.fl-field textarea{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid #bdcec5;border-radius:10px;background:#fff;color:#173a2d;font:inherit;box-sizing:border-box;transition:border-color .18s,box-shadow .18s}.fl-field textarea{min-height:145px;resize:vertical}.fl-field input:focus,.fl-field select:focus,.fl-field textarea:focus{outline:none;border-color:var(--fl-green);box-shadow:0 0 0 3px rgba(15,111,70,.12)}.fl-form__consent{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:13px;line-height:1.55;color:#5d7067}.fl-form__consent input{margin-top:3px}.fl-form__submit{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:4px}.fl-form__submit .button{min-height:48px;border:0;border-radius:999px;background:var(--fl-green);color:#fff;padding:13px 23px;font-weight:800;cursor:pointer}.fl-form__note{font-size:13px;color:#687b72}.fl-form__status{padding:17px 20px;margin:0 0 18px;border-radius:12px;background:#eaf6ef;border:1px solid #b9d9c7;color:#1d553b}.fl-form__status--error{background:#fff0ed;border-color:#efc6bd;color:#873a2d}.fl-form__status-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.fl-contact-layout .fl-editorial{display:block}.fl-contact-layout .fl-editorial h2{font-size:32px}.fl-contact-layout .fl-editorial__list{margin-bottom:18px}.fl-contact-layout .fl-contact-links{margin-top:22px}

/* home compacta: reduz altura sem esconder conteúdo relevante */
.fl-home-compact .fl-el-heading h2{font-size:clamp(29px,3.8vw,45px)}.fl-home-compact .fl-el-heading p{font-size:16px}.fl-home-compact .service-card__body,.fl-home-compact .project-card__body{padding:20px}.fl-home-compact .fl-el-process__item{padding:22px}.fl-home-compact .fl-testimonial-card,.fl-home-compact .fl-google-review-card{padding:20px}.fl-home-compact .fl-google-review-card{padding:0}.fl-section-tight .fl-client-grid{gap:14px}.fl-section-tight .fl-client-card{min-height:106px}

/* rodapé: somente itens principais, sem árvore inteira */
.fl-el-footer__menu .sub-menu{display:none!important}.fl-el-footer__grid{align-items:start}.fl-el-footer__brand p{max-width:420px}.fl-el-footer__nav{min-width:0}.fl-el-footer__menu a{display:inline-block;line-height:1.45}.fl-el-footer__logo{object-fit:contain;object-position:left center}

/* centralização e proteção contra estouro de largura */
.elementor-widget-florestare-services,.elementor-widget-florestare-projects,.elementor-widget-florestare-landings,.elementor-widget-florestare-areas,.elementor-widget-florestare-clients,.elementor-widget-florestare-testimonials,.elementor-widget-florestare-team,.elementor-widget-florestare-editorial,.elementor-widget-florestare-page-cards,.elementor-widget-florestare-cta{width:100%;min-width:0}.service-grid,.project-grid,.fl-area-grid,.fl-page-cards,.fl-client-grid,.fl-testimonial-grid,.fl-google-review-grid{width:100%}.service-card,.project-card,.fl-area-card,.fl-page-card{min-width:0}.service-card h3,.project-card h3,.fl-area-card h3{overflow-wrap:anywhere}

@media(max-width:1024px){
  .fl-area-grid,.fl-page-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-editorial{grid-template-columns:1fr;gap:34px}.fl-editorial__media{max-height:480px}.fl-editorial--left .fl-editorial__media{order:0}.fl-cta{grid-template-columns:1fr;gap:25px}.fl-cta__actions{justify-content:flex-start}.fl-contact-layout>.elementor-container{flex-wrap:wrap}.fl-contact-layout>.elementor-container>.elementor-column{width:100%!important}
}
@media(max-width:700px){
  .fl-page-hero .fl-el-heading h2{font-size:38px}.fl-page-hero .fl-el-heading p{font-size:16px}.fl-el-heading h2{font-size:31px}.fl-el-heading p{font-size:15.5px}.fl-editorial h2{font-size:31px}.fl-editorial__lead{font-size:17px}.fl-editorial__media{aspect-ratio:16/10}.fl-editorial__list li{padding:13px 14px 13px 43px}.fl-cta{padding:28px 22px;border-radius:17px}.fl-cta__actions{display:grid;width:100%}.fl-cta__actions .fl-el-button{width:100%;text-align:center}.fl-form{padding:20px 16px}.fl-form__row{grid-template-columns:1fr;gap:16px}.fl-form__submit{display:grid}.fl-form__submit .button{width:100%}.fl-el-footer{padding-top:46px}.fl-el-footer__grid{gap:25px}.fl-el-footer__legal{margin-top:28px}.fl-el-footer__bottom{font-size:12px}.fl-el-footer__nav{display:none}
  /* carrosséis por rolagem: a home permanece completa, mas muito mais curta */
  .fl-home-compact .fl-area-grid,.fl-home-compact .project-grid,.fl-home-compact .fl-testimonial-grid,.fl-home-compact .fl-google-review-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(82vw,1fr);grid-template-columns:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;gap:14px;padding:2px 14px 18px;margin-left:-14px;margin-right:-14px;scrollbar-width:thin}.fl-home-compact .fl-area-card,.fl-home-compact .project-card,.fl-home-compact .fl-testimonial-card,.fl-home-compact .fl-google-review-card{scroll-snap-align:start}.fl-home-compact .fl-el-process{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fl-home-compact .fl-el-process__item{padding:17px}.fl-home-compact .fl-el-process__item h3{font-size:17px}.fl-home-compact .fl-el-process__item p{font-size:13px}.fl-section-tight .fl-client-grid{display:flex;overflow-x:auto;gap:10px;padding-bottom:10px;scroll-snap-type:x mandatory}.fl-section-tight .fl-client-card{flex:0 0 145px;scroll-snap-align:start}.fl-area-grid,.fl-page-cards{grid-template-columns:1fr}.fl-page-card{min-height:auto}.fl-filtered-grid .filter-bar{margin-bottom:22px}
}
@media(max-width:700px){
  .fl-el-hero{min-height:auto!important}.fl-el-hero__inner{padding:44px 0 38px;gap:25px}.fl-el-hero h1{font-size:38px;line-height:1.05;margin-bottom:17px}.fl-el-hero__copy>p{font-size:16.5px;line-height:1.55;margin-bottom:22px}.fl-el-actions{gap:10px}.fl-el-button{min-height:46px}.fl-el-hero__facts{display:flex;grid-template-columns:none;overflow-x:auto;gap:10px;padding:2px 2px 10px;scroll-snap-type:x mandatory}.fl-el-hero__fact{flex:0 0 72vw;min-height:104px;padding:16px;scroll-snap-align:start}.fl-el-hero__fact strong{font-size:15px;margin-bottom:5px}.fl-el-hero__fact span{font-size:12.5px}.fl-home-compact.fl-section-hero{min-height:auto}
}

/* =========================================================
   Florestare v3.3 — escala fluida, grids contidos e contatos
   ========================================================= */
:root{
  --fl-shell-max:1520px;
  --fl-shell-gutter:clamp(18px,4vw,72px);
  --fl-shell-width:min(var(--fl-shell-max),calc(100vw - (var(--fl-shell-gutter) * 2)));
}
.fl-el-header__inner,.fl-el-footer__grid,.fl-el-footer__legal,.fl-el-footer__bottom,.fl-el-hero__inner{width:var(--fl-shell-width);max-width:var(--fl-shell-max)}
.elementor-section.fl-section-compact>.elementor-container,
.elementor-section.fl-section-tight>.elementor-container,
.elementor-section.fl-section-cta>.elementor-container,
.elementor-section.fl-page-hero>.elementor-container,
.elementor-section.fl-contact-layout>.elementor-container,
.elementor-section.fl-inline-contact>.elementor-container,
.elementor-section.fl-grid-contained>.elementor-container{
  width:var(--fl-shell-width)!important;
  max-width:var(--fl-shell-max)!important;
  margin-inline:auto!important;
}
.elementor-section.fl-section-hero>.elementor-container{width:100%!important;max-width:none!important}
.elementor-section .elementor-column,.elementor-section .elementor-widget-wrap,.elementor-widget-container{min-width:0}
.fl-el-section-heading,.fl-el-heading{max-width:960px}
.fl-el-heading--center,.fl-clients-centered .fl-el-heading{margin-inline:auto;text-align:center}
.fl-clients-centered .fl-el-heading p{margin-inline:auto;max-width:780px}
.fl-grid-contained .fl-filtered-grid,.fl-grid-contained .fl-progressive-grid,.fl-grid-contained .fl-area-grid,.fl-grid-contained .fl-page-cards,.fl-grid-contained .project-grid,.fl-grid-contained .service-grid{max-width:100%;margin-inline:auto}

/* Hero: destaques curtos, clicáveis e com leitura rápida */
.fl-el-hero__inner{grid-template-columns:minmax(0,1.15fr) minmax(390px,.75fr);gap:clamp(44px,5vw,88px);padding:clamp(72px,7vw,112px) 0}
.fl-el-hero__copy{max-width:790px}.fl-el-hero h1{font-size:clamp(48px,4.6vw,78px)}
.fl-el-hero__facts{gap:12px}.fl-el-hero__fact{position:relative;min-height:142px;padding:22px 50px 20px 22px;color:#fff;text-decoration:none;justify-content:center;overflow:hidden}
.fl-el-hero__fact strong{font-size:17px;line-height:1.25;margin-bottom:6px}.fl-el-hero__fact span{font-size:13.5px;line-height:1.45;max-width:230px}
.fl-el-hero__fact em{position:absolute;right:17px;bottom:16px;width:29px;height:29px;border:1px solid rgba(255,255,255,.42);border-radius:50%;display:grid;place-items:center;font-style:normal;transition:.22s}
.fl-el-hero__fact:hover{background:rgba(8,79,52,.72);border-color:rgba(255,255,255,.48);transform:translateY(-3px)}
.fl-el-hero__fact:hover em{background:#fff;color:var(--fl-deep);transform:translateX(2px)}

/* Clientes: linhas centralizadas e logomarcas sempre inteiras */
.fl-client-grid{grid-template-columns:repeat(auto-fit,minmax(185px,230px));justify-content:center;align-items:stretch;gap:18px}
.fl-client-card{width:100%;min-height:132px;padding:16px 18px}
.fl-client-card__logo{width:100%;height:86px;padding:8px 10px;overflow:visible}
.fl-client-card__logo img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center center;filter:none;opacity:1}
.fl-client-card:hover .fl-client-card__logo img{transform:scale(1.025) translateY(-7px)}
.fl-section-tight .fl-client-grid{max-width:1100px;margin-inline:auto;grid-template-columns:repeat(auto-fit,minmax(190px,245px))}

/* Grids com largura e proporção consistentes */
.fl-area-grid,.fl-page-cards,.fl-el-process{margin-inline:auto}
.fl-page-cards{max-width:1520px}.fl-page-card{min-height:225px;padding:24px;overflow-wrap:break-word}
.fl-sector-cards .fl-page-cards{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1320px}
.fl-cards-three .fl-page-cards{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1180px}
.fl-cards-two .fl-page-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}
.fl-process-contained .fl-el-process,.fl-el-process{max-width:1320px}.fl-el-process__item{min-width:0}
.fl-inline-contact>.elementor-container{align-items:flex-start}
.fl-inline-contact .fl-contact-links{margin-top:24px}.fl-inline-contact .fl-form{max-width:920px;margin-left:auto}
.fl-contact-layout .fl-form{max-width:940px}.fl-contact-layout .fl-editorial__list li{overflow-wrap:break-word}

/* Filtros: estado visual claro, sem recarregar a página */
.filter-bar{align-items:center}.filter-pill{white-space:nowrap}.filter-pill:focus-visible{outline:3px solid rgba(15,111,70,.22);outline-offset:2px}
.fl-filtered-grid [data-filter-item]{transition:opacity .18s ease,transform .18s ease}.fl-filtered-grid [data-filter-item][hidden]{display:none!important}

/* Em telas largas, usa o espaço sem deixar os cards excessivamente grandes */
@media(min-width:1400px){
  .service-grid,.fl-landings-block{grid-template-columns:repeat(4,minmax(0,1fr))}
  .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fl-area-grid{gap:24px}.fl-area-card__body{padding:24px}
  .fl-el-section-heading h2,.fl-el-heading h2{font-size:clamp(36px,3vw,54px)}
}
@media(min-width:1900px){
  :root{--fl-shell-max:1680px}
  .fl-el-header__inner{min-height:94px}.fl-el-hero__inner{padding-block:116px}
}
@media(max-width:1200px){
  :root{--fl-shell-gutter:24px}.fl-el-hero__inner{grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:38px}
  .fl-sector-cards .fl-page-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1024px){
  :root{--fl-shell-gutter:20px}.fl-el-hero__inner{width:calc(100vw - 40px);grid-template-columns:1fr;padding:64px 0 48px}
  .fl-el-hero__copy{max-width:800px}.fl-el-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}
  .fl-cards-three .fl-page-cards,.fl-sector-cards .fl-page-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fl-inline-contact>.elementor-container{flex-wrap:wrap}.fl-inline-contact>.elementor-container>.elementor-column{width:100%!important}.fl-inline-contact .fl-form{max-width:none;margin:0}
}
@media(max-width:700px){
  :root{--fl-shell-gutter:15px}.elementor-section.fl-section-compact>.elementor-container,.elementor-section.fl-section-tight>.elementor-container,.elementor-section.fl-section-cta>.elementor-container,.elementor-section.fl-page-hero>.elementor-container,.elementor-section.fl-contact-layout>.elementor-container,.elementor-section.fl-inline-contact>.elementor-container,.elementor-section.fl-grid-contained>.elementor-container{width:calc(100vw - 30px)!important}
  .fl-el-hero__inner{width:calc(100vw - 30px);padding:42px 0 34px}.fl-el-hero h1{font-size:clamp(36px,11vw,47px)}
  .fl-el-hero__facts{display:grid;grid-template-columns:1fr 1fr;overflow:visible;padding:0;gap:9px}.fl-el-hero__fact{min-height:116px;padding:15px 38px 14px 15px;flex:initial}.fl-el-hero__fact strong{font-size:14px}.fl-el-hero__fact span{font-size:11.8px}.fl-el-hero__fact em{right:11px;bottom:11px;width:25px;height:25px}
  .fl-client-grid,.fl-section-tight .fl-client-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;max-width:none;padding:0;margin-inline:0;gap:10px}.fl-client-card,.fl-section-tight .fl-client-card{min-height:100px;padding:10px;flex:initial}.fl-client-card__logo{height:65px;padding:6px}
  .fl-cards-three .fl-page-cards,.fl-sector-cards .fl-page-cards,.fl-cards-two .fl-page-cards{grid-template-columns:1fr}.fl-page-card{min-height:auto}
  .fl-el-process{grid-template-columns:1fr}.fl-el-process__item{padding:18px}
  .filter-bar{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:2px 1px 10px;scrollbar-width:thin}.filter-pill{flex:0 0 auto}
}
