/* BRIVANTA presentation refinement — tighter rhythm, service hierarchy, mobile typography */

/* 1) Inner-page rhythm: reduce oversized gaps without making pages feel dense. */
body:not(.vision-home) .section{
  padding:58px 0!important;
}
body:not(.vision-home) .section-heading.centered{
  margin-bottom:28px!important;
}
.services-detail .container{
  gap:14px!important;
}

/* 2) Service cards: stronger internal hierarchy with slightly leaner geometry. */
.service-detail{
  grid-template-columns:50px minmax(250px,.92fr) 1fr!important;
  gap:24px!important;
  padding:31px 34px!important;
}
.service-detail .detail-number{
  padding-top:3px!important;
  color:rgba(20,105,59,.34)!important;
  font-size:11px!important;
  letter-spacing:.16em!important;
}
.service-detail h2{
  font-size:30px!important;
  line-height:1.07!important;
  letter-spacing:-.038em!important;
}
.service-detail>div:last-child{
  padding-left:22px!important;
  border-left:1px solid rgba(18,83,48,.085)!important;
}
.service-detail>div:last-child>p{
  margin-bottom:14px!important;
  line-height:1.64!important;
}
.clean-list{
  gap:9px!important;
}
.clean-list li{
  padding-left:22px!important;
  line-height:1.5!important;
}
.clean-list li:before{
  content:""!important;
  width:9px!important;
  height:9px!important;
  top:.47em!important;
  border-radius:50%!important;
  background:var(--bv171-green)!important;
  color:transparent!important;
}

/* Secondary service CTA: deliberate, quieter than the primary consultation action. */
.service-detail>div:last-child>p:last-child a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid rgba(17,101,58,.13)!important;
  border-radius:999px!important;
  background:rgba(17,101,58,.045)!important;
  color:#315f45!important;
  font-size:12.75px!important;
  font-weight:650!important;
  line-height:1.2!important;
  text-decoration:none!important;
}
.service-detail>div:last-child>p:last-child a:hover{
  background:rgba(17,101,58,.075)!important;
  border-color:rgba(17,101,58,.20)!important;
  color:#174e31!important;
}

/* Tablet: preserve hierarchy while collapsing the service layout cleanly. */
@media(max-width:820px){
  body:not(.vision-home) .section{
    padding:48px 0!important;
  }
  .service-detail{
    grid-template-columns:40px 1fr!important;
    gap:17px!important;
    padding:25px 26px!important;
  }
  .service-detail>div:last-child{
    grid-column:2!important;
    padding-left:0!important;
    border-left:0!important;
  }
}

/* 3) iPhone/mobile typography and density. */
@media(max-width:560px){
  body:not(.vision-home) .inner-hero{
    padding:96px 0 42px!important;
  }
  body:not(.vision-home) .inner-hero h1{
    font-size:39px!important;
    line-height:1.015!important;
    letter-spacing:-.04em!important;
  }
  body:not(.vision-home) .section{
    padding:42px 0!important;
  }
  body:not(.vision-home) .section-heading.centered{
    margin-bottom:24px!important;
  }

  .service-detail{
    grid-template-columns:1fr!important;
    gap:11px!important;
    padding:22px 18px 23px!important;
  }
  .service-detail .detail-number{
    padding-top:0!important;
    font-size:10.5px!important;
    line-height:1!important;
  }
  .service-detail .eyebrow{
    margin-bottom:9px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
  }
  .service-detail h2{
    font-size:27px!important;
    line-height:1.055!important;
    letter-spacing:-.035em!important;
  }
  .service-detail>div:last-child{
    grid-column:auto!important;
    margin-top:4px!important;
    padding:15px 0 0!important;
    border-top:1px solid rgba(18,83,48,.075)!important;
    border-left:0!important;
  }
  .service-detail>div:last-child>p{
    margin-bottom:13px!important;
    font-size:14px!important;
    line-height:1.58!important;
  }
  .clean-list{
    gap:8px!important;
  }
  .clean-list li{
    padding-left:20px!important;
    font-size:13.75px!important;
    line-height:1.46!important;
  }
  .clean-list li:before{
    width:8px!important;
    height:8px!important;
    top:.46em!important;
  }
  .service-detail>div:last-child>p:last-child{
    margin-top:15px!important;
    margin-bottom:0!important;
  }
  .service-detail>div:last-child>p:last-child a{
    min-height:37px!important;
    padding:8px 12px!important;
    font-size:12.5px!important;
  }
}
