
/* V186 - Match the approved article-bottom service banner design */
body:not(.admin-layout) .v186-service-banner{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(290px,1.15fr) minmax(430px,1.45fr) minmax(300px,.95fr)!important;
  gap:0!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  min-height:200px!important;
  margin:34px 0 26px!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #cfe5d8!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 7% 94%, rgba(142,207,151,.20) 0 45px, transparent 46px),
    linear-gradient(102deg,#f8fcf7 0%,#f3faf5 68%,#eef8f1 100%)!important;
  box-shadow:0 10px 28px rgba(22,92,57,.06)!important;
}

body:not(.admin-layout) .v186-service-banner:before,
body:not(.admin-layout) .v186-service-banner:after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:60% 40% 60% 40%;
  background:rgba(117,190,126,.18);
  transform:rotate(-28deg);
}
body:not(.admin-layout) .v186-service-banner:before{
  width:58px;height:20px;left:8px;bottom:14px;
}
body:not(.admin-layout) .v186-service-banner:after{
  width:44px;height:16px;left:42px;bottom:31px;
}

body:not(.admin-layout) .v186-brand-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:30px 34px 30px 40px!important;
  min-width:0!important;
}
body:not(.admin-layout) .v186-brand-copy small{
  display:block!important;
  margin-bottom:12px!important;
  color:#0a7a43!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.2px!important;
}
body:not(.admin-layout) .v186-brand-copy h2{
  margin:0!important;
  color:#0b5439!important;
  font-size:31px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:-.6px!important;
}
body:not(.admin-layout) .v186-brand-copy p{
  margin:7px 0 0!important;
  color:#16263e!important;
  font-size:29px!important;
  line-height:1.2!important;
  font-weight:500!important;
}

body:not(.admin-layout) .v186-service-points{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  align-items:center!important;
  min-width:0!important;
  padding:22px 18px!important;
}
body:not(.admin-layout) .v186-service-point{
  position:relative!important;
  display:flex!important;
  min-width:0!important;
  min-height:122px!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:12px!important;
  padding:0 18px!important;
  text-align:center!important;
}
body:not(.admin-layout) .v186-service-point:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:18%;
  width:1px;
  height:64%;
  background:#bfd9ca;
}
body:not(.admin-layout) .v186-service-point b{
  color:#14223a!important;
  font-size:19px!important;
  line-height:1.28!important;
  font-weight:800!important;
}
body:not(.admin-layout) .v186-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  border-radius:50%!important;
  background:#dcefdc!important;
  color:#0a8a4a!important;
}
body:not(.admin-layout) .v186-icon svg{
  width:30px!important;
  height:30px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body:not(.admin-layout) .v186-icon-truck svg circle{
  fill:#0a8a4a!important;
  stroke:none!important;
}

body:not(.admin-layout) .v186-contact-panel{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:22px!important;
  padding:30px 34px!important;
  background:
    radial-gradient(circle at 95% 85%,rgba(77,183,100,.16) 0 80px,transparent 81px),
    linear-gradient(135deg,#087744 0%,#0a8a4e 100%)!important;
  color:#fff!important;
}
body:not(.admin-layout) .v186-contact-panel:before{
  content:"";
  position:absolute;
  left:-48px;
  top:-10%;
  width:88px;
  height:120%;
  border-radius:50%;
  background:#f2faf4;
  opacity:.96;
}
body:not(.admin-layout) .v186-contact-top{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
}
body:not(.admin-layout) .v186-phone-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  background:#20bf63!important;
  box-shadow:0 6px 18px rgba(0,0,0,.10)!important;
}
body:not(.admin-layout) .v186-phone-icon svg{
  width:29px!important;
  height:29px!important;
  fill:#fff!important;
}
body:not(.admin-layout) .v186-contact-top small{
  display:block!important;
  margin-bottom:2px!important;
  color:#e9fff1!important;
  font-size:16px!important;
  font-weight:700!important;
}
body:not(.admin-layout) .v186-contact-top a{
  display:block!important;
  color:#fff!important;
  font-size:26px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:.2px!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body:not(.admin-layout) .v186-quote-btn{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:52px!important;
  padding:0 22px!important;
  border-radius:28px!important;
  background:#fff!important;
  color:#087744!important;
  box-shadow:0 6px 16px rgba(0,0,0,.07)!important;
  font-size:17px!important;
  font-weight:900!important;
  text-decoration:none!important;
}
body:not(.admin-layout) .v186-quote-btn span{
  font-size:31px!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
}

/* Keep the existing topic/share area visually consistent with the design */
body:not(.admin-layout) .v175-article-footer{
  border-top:1px solid #dfe7e2!important;
  padding-top:16px!important;
}
body:not(.admin-layout) .v175-tags{
  gap:8px!important;
}
body:not(.admin-layout) .v175-tags a,
body:not(.admin-layout) .v175-tags span{
  border:0!important;
  border-radius:999px!important;
  background:#f1f5f3!important;
  color:#40564d!important;
}
body:not(.admin-layout) .v175-bottom-share{
  margin-top:18px!important;
  min-height:64px!important;
  padding:12px 16px!important;
  border-radius:12px!important;
  background:#f8faf9!important;
}
body:not(.admin-layout) .v175-bottom-share a,
body:not(.admin-layout) .v175-bottom-share button{
  min-height:38px!important;
  padding:0 15px!important;
  border:1px solid #d7e3dc!important;
  border-radius:20px!important;
  background:#fff!important;
}

/* Large desktop refinements */
@media(min-width:1500px){
  body:not(.admin-layout) .v186-service-banner{
    grid-template-columns:minmax(330px,1.15fr) minmax(520px,1.5fr) minmax(340px,.95fr)!important;
    min-height:212px!important;
  }
  body:not(.admin-layout) .v186-brand-copy h2{font-size:34px!important}
  body:not(.admin-layout) .v186-brand-copy p{font-size:31px!important}
}

/* Medium desktop */
@media(min-width:1100px) and (max-width:1499px){
  body:not(.admin-layout) .v186-service-banner{
    grid-template-columns:minmax(250px,1.05fr) minmax(410px,1.45fr) minmax(270px,.95fr)!important;
  }
  body:not(.admin-layout) .v186-brand-copy{padding:26px 26px!important}
  body:not(.admin-layout) .v186-brand-copy h2{font-size:27px!important}
  body:not(.admin-layout) .v186-brand-copy p{font-size:25px!important}
  body:not(.admin-layout) .v186-service-point{padding:0 10px!important}
  body:not(.admin-layout) .v186-service-point b{font-size:16px!important}
  body:not(.admin-layout) .v186-contact-panel{padding:25px 24px!important}
  body:not(.admin-layout) .v186-contact-top a{font-size:22px!important}
  body:not(.admin-layout) .v186-quote-btn{font-size:15px!important}
}

/* Tablet/mobile */
@media(max-width:1099px){
  body:not(.admin-layout) .v186-service-banner{
    grid-template-columns:1fr!important;
    min-height:0!important;
    border-radius:15px!important;
  }
  body:not(.admin-layout) .v186-brand-copy{
    padding:24px 22px 16px!important;
    text-align:center!important;
    align-items:center!important;
  }
  body:not(.admin-layout) .v186-brand-copy small{font-size:12px!important;margin-bottom:7px!important}
  body:not(.admin-layout) .v186-brand-copy h2{font-size:25px!important}
  body:not(.admin-layout) .v186-brand-copy p{font-size:21px!important}
  body:not(.admin-layout) .v186-service-points{
    padding:8px 12px 20px!important;
  }
  body:not(.admin-layout) .v186-service-point{
    min-height:104px!important;
    padding:0 7px!important;
    gap:9px!important;
  }
  body:not(.admin-layout) .v186-icon{
    width:48px!important;height:48px!important;flex-basis:48px!important;
  }
  body:not(.admin-layout) .v186-icon svg{width:25px!important;height:25px!important}
  body:not(.admin-layout) .v186-service-point b{font-size:14px!important}
  body:not(.admin-layout) .v186-contact-panel{
    padding:23px 22px!important;
    gap:16px!important;
  }
  body:not(.admin-layout) .v186-contact-panel:before{display:none!important}
  body:not(.admin-layout) .v186-contact-top{
    grid-template-columns:50px minmax(0,1fr)!important;
    gap:12px!important;
  }
  body:not(.admin-layout) .v186-phone-icon{
    width:50px!important;height:50px!important;
  }
  body:not(.admin-layout) .v186-contact-top small{font-size:13px!important}
  body:not(.admin-layout) .v186-contact-top a{font-size:22px!important}
  body:not(.admin-layout) .v186-quote-btn{
    min-height:48px!important;
    font-size:14px!important;
  }
}
@media(max-width:560px){
  body:not(.admin-layout) .v186-service-banner{
    margin:24px 0 18px!important;
  }
  body:not(.admin-layout) .v186-service-points{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body:not(.admin-layout) .v186-service-point{
    min-height:72px!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    text-align:left!important;
    justify-items:start!important;
    align-items:center!important;
    gap:12px!important;
    padding:9px 16px!important;
  }
  body:not(.admin-layout) .v186-service-point:not(:last-child):after{
    left:16px!important;right:16px!important;top:auto!important;bottom:0!important;
    width:auto!important;height:1px!important;
  }
  body:not(.admin-layout) .v186-icon{
    width:42px!important;height:42px!important;flex-basis:42px!important;
  }
  body:not(.admin-layout) .v186-service-point b{
    font-size:13px!important;
  }
  body:not(.admin-layout) .v186-service-point b br{display:none!important}
  body:not(.admin-layout) .v186-contact-top a{
    font-size:20px!important;
  }
}
