body.home .elementor-4579 > .elementor-element.mabin-home-block,
body.home .elementor-4579 > .elementor-element.mabin-home-block > .e-con-inner { max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
body.home .mabin-home-block .elementor-widget-shortcode,
body.home .mabin-home-block .elementor-widget-shortcode .elementor-widget-container { width: 100%; margin: 0; padding: 0; }
.mabin-home { color: #173b39; font-family: Outfit, sans-serif; }
.mabin-home * { box-sizing: border-box; }
.mabin-home-shell { width: min(100% - 48px, 1240px); margin: 0 auto; }
.mabin-home-section { padding: clamp(68px, 7vw, 112px) 0; }
.mabin-home-kicker, .mabin-home-eyebrow { margin: 0 0 16px; color: #087f71; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.mabin-home h1,.mabin-home h2,.mabin-home h3,.mabin-home p { margin-top: 0; }
.mabin-home h1,.mabin-home h2 { font-family: Outfit, sans-serif; font-weight: 800; letter-spacing: -.035em; line-height: 1.05; }
.mabin-home h2 { color: #083b39; font-size: clamp(32px, 3.9vw, 56px); }
.mabin-home p { line-height: 1.62; }
.mabin-home-hero { min-height: clamp(620px, 54vw, 760px); display: flex; align-items: center; background: linear-gradient(90deg, rgba(4,39,42,.96) 0%, rgba(4,39,42,.91) 36%, rgba(4,39,42,.42) 72%, rgba(4,39,42,.28) 100%), url('https://mabin.com.br/wp-content/uploads/2024/02/home-mabin-engenharia-energia-v1.webp') center/cover no-repeat; color: #fff; }
.mabin-home-hero__inner { padding: 86px 0; }
.mabin-home-hero .mabin-home-eyebrow { color: #c9e882; }
.mabin-home-hero h1 { max-width: 790px; margin-bottom: 22px; color: #fff; font-size: clamp(46px, 5.7vw, 82px); }
.mabin-home-hero__lead { max-width: 610px; margin-bottom: 32px; color: #e6f0eb; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.5 !important; }
.mabin-home-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; }
.mabin-home-button { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 54px; padding: 14px 22px; border: 1px solid #d6ec94; border-radius: 12px; background: #c6e27d; box-shadow: 0 12px 30px rgba(5,44,38,.18); color: #073733 !important; font-size: 14px; font-weight: 800; line-height: 1.2; text-decoration: none !important; transition: transform .2s, background .2s; }
.mabin-home-button:hover { transform: translateY(-2px); background: #def29c; }
.mabin-home-link, .mabin-home-text-link { display: inline-flex; align-items: center; gap: 10px; color: #0a7366 !important; font-size: 15px; font-weight: 750; text-decoration: none !important; }
.mabin-home-link { color: #fff !important; }
.mabin-home-link:hover,.mabin-home-text-link:hover { text-decoration: underline !important; }
.mabin-home-hero__credential { margin: 40px 0 0 !important; padding-top: 17px; width: max-content; max-width: 100%; border-top: 1px solid rgba(255,255,255,.33); color: #d7e8e0; font-size: 13px; letter-spacing: .02em; }
.mabin-home-heading { max-width: 760px; margin-bottom: 38px; }
.mabin-home-heading p:last-child { max-width: 680px; margin-bottom: 0; color: #506664; font-size: 18px; }
.mabin-home-heading--row { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.mabin-home-heading--row h2 { max-width: 750px; margin-bottom: 0; }
.mabin-home-heading--row p:last-child { margin-top: 16px; }
.mabin-home-services { background: #f3f8f5; }
.mabin-home-services__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.mabin-home-service { position: relative; min-height: 240px; display: flex; flex-direction: column; padding: 25px 22px; border: 1px solid #d9e8df; border-radius: 16px; background: #fff; color: #123d3a !important; text-decoration: none !important; box-shadow: 0 10px 30px rgba(8,57,46,.04); transition: transform .2s, box-shadow .2s, border-color .2s; }
.mabin-home-service:hover { transform: translateY(-4px); border-color: #a7d5bb; box-shadow: 0 18px 36px rgba(8,57,46,.12); }
.mabin-home-service__number { margin-bottom: auto; color: #0a9683; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.mabin-home-service__title { margin: 24px 0 8px; font-size: 20px; font-weight: 800; line-height: 1.15; }
.mabin-home-service__body { max-width: 29ch; color: #5c706d; font-size: 14px; line-height: 1.45; }
.mabin-home-service__arrow { position: absolute; top: 20px; right: 20px; color: #0a8e7c; font-size: 22px; }
.mabin-home-services__more { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 24px; color: #45615d; font-size: 15px; }
.mabin-home-services__more a { color: #087f71; font-weight: 800; text-decoration: none; }
body.home .elementor-element-4e02be5 { padding: 62px 0 74px !important; background: #fff; }
body.home .elementor-element-4e02be5 .elementor-heading-title { color: #0b3b38; }
.mabin-home-about__grid,.mabin-home-proof__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(35px, 6vw, 110px); align-items: center; }
.mabin-home-about__grid > div:first-child > p:not(.mabin-home-kicker) { max-width: 60ch; margin-bottom: 26px; color: #526865; font-size: 18px; }
.mabin-home-about__steps { display: grid; gap: 12px; }
.mabin-home-about__steps > div { display: grid; grid-template-columns: 48px 1fr; gap: 2px 15px; padding: 19px 22px; border: 1px solid #e1ece6; border-radius: 12px; background: #f6f9f7; }
.mabin-home-about__steps span { grid-row: span 2; color: #078f7e; font-size: 14px; font-weight: 800; }
.mabin-home-about__steps strong { color: #123e3a; font-size: 18px; }
.mabin-home-about__steps p { margin: 0; color: #5d706d; font-size: 14px; }
.mabin-home-proof { overflow: hidden; background: #082f31; color: #eef9f2; }
.mabin-home-proof h2 { color: #fff; }
.mabin-home-proof p:not(.mabin-home-kicker) { max-width: 48ch; color: #d1e2dc; font-size: 18px; }
.mabin-home-proof .mabin-home-kicker { color: #c9e882; }
.mabin-home-button--light { margin-top: 14px; }
.mabin-home-proof__visual { min-height: 390px; border-radius: 20px; background: url('https://mabin.com.br/wp-content/uploads/2024/02/PainelSolarPordoSol.webp') center/cover; box-shadow: 0 20px 50px rgba(0,0,0,.2); }
.mabin-home-projects { background: #f6f9f7; }
.mabin-home-stories { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.mabin-home-story { overflow: hidden; display: flex; flex-direction: column; border: 1px solid #dce8e2; border-radius: 16px; background: #fff; color: #113c39 !important; text-decoration: none !important; box-shadow: 0 10px 30px rgba(10,57,45,.05); transition: transform .2s, box-shadow .2s; }
.mabin-home-story:hover { transform: translateY(-4px); box-shadow: 0 20px 36px rgba(10,57,45,.12); }
.mabin-home-story__image { display: block; aspect-ratio: 16/9; overflow: hidden; background: #e3eee7; }
.mabin-home-story__image img { width: 100%; height: 100%; object-fit: cover; }
.mabin-home-story__text { display: flex; flex: 1; flex-direction: column; gap: 13px; padding: 21px; }
.mabin-home-story__date { color: #70827d; font-size: 12px; }
.mabin-home-story__text strong { font-size: 19px; line-height: 1.28; }
.mabin-home-story__read { margin-top: auto; color: #088877; font-size: 13px; font-weight: 800; }
body.home .elementor-element-3775c55b { margin: 0 !important; padding: 55px 0 70px !important; background: #fff; }
.mabin-home-testimonials { background: #0b756a; }
.mabin-home-testimonials .mabin-home-kicker { color: #d8ef9e; }
.mabin-home-testimonials h2,.mabin-home-testimonials .mabin-home-heading p:last-child { color: #fff; }
.mabin-home-quotes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.mabin-home-quote { display: flex; flex-direction: column; justify-content: space-between; min-height: 280px; margin: 0; padding: 27px; border: 1px solid rgba(255,255,255,.23); border-radius: 16px; background: #fff; color: #153e3b; }
.mabin-home-quote blockquote { margin: 0 0 25px; font-size: 18px; line-height: 1.5; }
.mabin-home-quote figcaption { display: flex; flex-direction: column; gap: 3px; border-top: 1px solid #dce8e1; padding-top: 16px; font-size: 14px; }
.mabin-home-quote figcaption span { color: #6a7c76; }
.mabin-home-news { background: #fff; }
.mabin-home-contact { padding: 68px 0; background: #e8f2ed; }
.mabin-home-contact__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.mabin-home-contact h2 { max-width: 700px; margin-bottom: 10px; font-size: clamp(32px, 3.5vw, 48px); }
.mabin-home-contact p:last-child { margin: 0; color: #506a63; font-size: 17px; }
.mabin-home-contact .mabin-home-button { flex: none; }
.mabin-home a:focus-visible { outline: 3px solid #b1d969 !important; outline-offset: 4px; }
@media (max-width: 1024px) {
  .mabin-home-services__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mabin-home-stories { gap: 14px; }
  .mabin-home-story__text strong { font-size: 16px; }
}
@media (max-width: 767px) {
  .mabin-home-shell { width: min(100% - 36px, 1240px); }
  .mabin-home-section { padding: 62px 0; }
  .mabin-home-hero { min-height: 660px; background: linear-gradient(180deg, rgba(4,39,42,.88), rgba(4,39,42,.72)), url('https://mabin.com.br/wp-content/uploads/2024/02/home-mabin-engenharia-energia-v1.webp') center/cover no-repeat; }
  .mabin-home-hero__inner { padding: 60px 0; }
  .mabin-home-hero h1 { font-size: clamp(41px, 10.5vw, 58px); }
  .mabin-home-hero__lead { font-size: 17px; }
  .mabin-home-actions { align-items: stretch; flex-direction: column; }
  .mabin-home-actions .mabin-home-button { justify-content: space-between; }
  .mabin-home-hero__credential { margin-top: 30px !important; }
  .mabin-home-heading { margin-bottom: 27px; }
  .mabin-home-heading--row,.mabin-home-contact__inner { align-items: flex-start; flex-direction: column; }
  .mabin-home-services__grid,.mabin-home-about__grid,.mabin-home-proof__grid,.mabin-home-stories,.mabin-home-quotes { grid-template-columns: 1fr; }
  .mabin-home-service { min-height: 185px; }
  .mabin-home-service__title { margin-top: 19px; }
  .mabin-home-about__grid { gap: 30px; }
  .mabin-home-proof__visual { min-height: 250px; }
  .mabin-home-quote { min-height: 0; }
  .mabin-home-contact .mabin-home-button { width: 100%; justify-content: space-between; }
  body.home .elementor-element-4e02be5 { padding: 50px 0 !important; }
}

/* Institutional Home: preserve original Elementor sections and shared templates. */
body.home .elementor-element-60169967 .elementor-element-135e7ef4>.elementor-widget-wrap,
body.home .elementor-element-60169967 .elementor-element-4513c78a>.elementor-widget-wrap { padding:65px 45px!important; }
body.home .elementor-element-60169967 .elementor-counter { border:1px solid #ffffff26;border-radius:14px;background:#ffffff08;padding:22px 12px!important; }
body.home .elementor-element-60169967 .elementor-counter-title { font-size:15px!important;color:#d3e6db!important;line-height:1.45!important; }
body.home .elementor-element-60169967 .elementor-counter-number-wrapper { font-size:44px!important;color:#c6e581!important; }
body.home .elementor-element-60169967 .elementor-widget-video { overflow:hidden;border-radius:16px;box-shadow:0 18px 40px #0003; }
body.home .elementor-element-34b7712 .obfx-service { padding:25px!important;border:1px solid #dbe7de;border-radius:16px;background:#f4f8f5; }
body.home .elementor-element-08e92d2 { padding:0 20px 55px!important;margin:0!important;background:#f5f9f6!important; }
body.home .elementor-element-18f2556 { padding:70px 24px!important;background:linear-gradient(120deg,#073c3b,#0b695a)!important; }
body.home .elementor-element-18f2556 .elementor-heading-title { color:#fff!important;line-height:1.15!important; }
body.home .elementor-element-18f2556 .elementor-widget-text-editor { color:#d7e9df!important; }
@media(max-width:767px){body.home .elementor-element-60169967 .elementor-element-135e7ef4>.elementor-widget-wrap,body.home .elementor-element-60169967 .elementor-element-4513c78a>.elementor-widget-wrap{padding:42px 22px!important}body.home .elementor-element-18f2556{padding:52px 18px!important}}
body.home #solucoes { background:#fff; }
body.home .elementor-element-3602575 { padding:0 20px 48px!important; background:#fff; }
body.home .elementor-element-3602575 .elementor-button,
body.home .elementor-element-08e92d2 .elementor-button,
body.home .elementor-element-392536d .elementor-button { border-radius:12px!important; background:#c8e580!important; color:#083b39!important; font-weight:800!important; box-shadow:0 12px 28px rgba(13,75,58,.12); }
body.home .elementor-element-60169967 { padding:0!important; background:#092f31!important; }
body.home .elementor-element-60169967>.elementor-container { max-width:1440px!important; }
body.home .elementor-element-60169967 .elementor-element-135e7ef4 { background:#0a3839!important; }
body.home .elementor-element-60169967 .elementor-element-4513c78a { background:#0c6256!important; }
body.home .elementor-element-60169967 .elementor-element-4b9f18d .elementor-heading-title { color:#fff!important; font-size:clamp(32px,3vw,48px)!important; line-height:1.11; letter-spacing:-.025em; }
body.home .elementor-element-60169967 .elementor-element-4b9f18d .elementor-heading-title span { font-size:inherit!important; }
body.home .elementor-element-60169967 .elementor-element-e857c87 .elementor-heading-title { color:#e0f0e7!important; font-size:18px!important; line-height:1.55; }
body.home .elementor-element-60169967 .elementor-element-d217c20 { background:none!important; }
body.home .elementor-element-60169967 .elementor-counter { padding:8px; }
body.home .elementor-element-60169967 .elementor-counter-number-wrapper { font-weight:800; }
body.home .elementor-element-60169967 .elementor-element-2b8c684 img,
body.home .elementor-element-60169967 .elementor-element-b8135c0 img { max-height:98px; width:auto; object-fit:contain; }
body.home .elementor-element-3775c55b { padding:72px 0!important; }
body.home .elementor-element-b8bf8d4,
body.home .elementor-element-3a8c73d { background:#f5f8f5; }
body.home .elementor-element-b8bf8d4>.elementor-container,
body.home .elementor-element-3a8c73d>.elementor-container { max-width:1240px!important; gap:14px; }
body.home .elementor-element-b8bf8d4 .elementor-column,
body.home .elementor-element-3a8c73d .elementor-column { overflow:hidden; border-radius:16px; }
body.home .elementor-element-34b7712 { padding:70px 20px 62px!important; background:#fff!important; }
body.home .elementor-element-34b7712 .elementor-container { max-width:1240px!important; }
body.home .elementor-element-04fe75f,
body.home .elementor-element-392536d { padding:76px 0!important; background:#f5f9f6!important; }
body.home .elementor-element-392536d { background:#fff!important; }
body.home .elementor-element-04fe75f .e-con-inner,
body.home .elementor-element-392536d .e-con-inner { max-width:1240px!important; }
body.home .elementor-element-04fe75f .elementor-post,
body.home .elementor-element-392536d .elementor-post { overflow:hidden; border:1px solid #dae8df!important; border-radius:15px!important; background:#fff!important; box-shadow:0 12px 30px rgba(7,64,49,.06); }
body.home .elementor-element-04fe75f .elementor-post__thumbnail,
body.home .elementor-element-392536d .elementor-post__thumbnail { aspect-ratio:16/10; }
body.home .elementor-element-04fe75f .elementor-post__thumbnail img,
body.home .elementor-element-392536d .elementor-post__thumbnail img { width:100%; height:100%; object-fit:cover; }
body.home .elementor-element-04fe75f .elementor-post__title a,
body.home .elementor-element-392536d .elementor-post__title a { color:#0b3f3b!important; font-weight:750; }
body.home .elementor-element-04fe75f .elementor-post__text,
body.home .elementor-element-392536d .elementor-post__text { padding:17px 19px 21px; }
body.home .elementor-element-392536d .elementor-shape { display:none; }
@media(max-width:767px){
 body.home .elementor-element-60169967 .elementor-element-4b9f18d .elementor-heading-title,
 body.home .elementor-element-60169967 .elementor-element-4b9f18d .elementor-heading-title span { font-size:34px!important; }
 body.home .elementor-element-60169967 .elementor-element-e857c87 .elementor-heading-title { font-size:16px!important; }
 body.home .elementor-element-34b7712 { padding:48px 18px!important; }
 body.home .elementor-element-04fe75f,
 body.home .elementor-element-392536d { padding:55px 18px!important; }
}
