/* VoltTech contact brand icons — CSS fallback, no JavaScript required */
a[href^="https://wa.me/"]::before,
a[href^="mailto:"]::before{
  content:"";
  display:inline-block;
  width:1.35em;
  height:1.35em;
  flex:0 0 1.35em;
  margin-right:.55em;
  vertical-align:-.3em;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
a[href^="https://wa.me/"]::before{background-image:url('whatsapp-logo.svg')}
a[href^="mailto:"]::before{background-image:url('gmail-logo.svg')}

/* Keep icon + CTA text aligned inside VoltTech buttons/cards. */
a.btn[href^="https://wa.me/"],
a.btn[href^="mailto:"],
.links a[href^="https://wa.me/"],
.links a[href^="mailto:"],
.contact a[href^="https://wa.me/"],
.contact a[href^="mailto:"]{
  align-items:center;
}

/* The older JS icon injector may still run in some cached pages.
   Hide its injected IMG so there is never a duplicate icon. */
.vt-contact-icon{display:none!important}

/* Homepage Google reviews — compact trust strip directly before Contact.
   Scoped with :has() so this layout only affects a page that actually
   contains the reviews section. */
main>.wrap:has(>.reviews-section){
  display:flex;
  flex-direction:column;
}
main>.wrap:has(>.reviews-section)>.reviews-section{order:1}
main>.wrap:has(>.reviews-section)>#contact{order:2}
main>.wrap:has(>.reviews-section)>.creator-promo{order:3}

section.reviews-section{
  margin:10px 0!important;
  padding:20px 18px!important;
}
.reviews-section .reviews-head{
  align-items:center;
  margin-bottom:11px;
}
.reviews-section .reviews-head h2{
  font-size:20px!important;
  margin:5px 0 0!important;
}
.reviews-section .google-review-link{
  font-size:8px;
}
.reviews-section .reviews-viewport{
  margin-left:-18px;
  margin-right:-18px;
}
.reviews-section .reviews-track{
  gap:8px;
  padding-left:18px;
  animation-duration:30s;
}
.reviews-section .review-card{
  flex-basis:248px;
  min-height:154px;
  padding:13px 14px;
}
.reviews-section .reviewer{
  gap:8px;
}
.reviews-section .review-avatar{
  width:28px;
  height:28px;
  flex-basis:28px;
  font-size:10px;
}
.reviews-section .reviewer b{
  font-size:12px;
}
.reviews-section .google-mark{
  font-size:8px;
}
.reviews-section .review-stars{
  margin:9px 0 7px;
  font-size:12px;
  letter-spacing:1.5px;
}
.reviews-section .review-card blockquote{
  font-size:11px;
  line-height:1.48;
}
.reviews-section .review-source{
  margin-top:8px;
  font-size:7px;
}

@media(max-width:560px){
  section.reviews-section{
    padding:16px 14px!important;
    margin:8px 0!important;
  }
  .reviews-section .reviews-head{
    flex-direction:row;
    align-items:flex-end;
    gap:10px;
    margin-bottom:9px;
  }
  .reviews-section .reviews-head h2{
    font-size:18px!important;
  }
  .reviews-section .google-review-link{
    margin-left:auto;
    white-space:nowrap;
    font-size:7px;
  }
  .reviews-section .reviews-viewport{
    margin-left:-14px;
    margin-right:-14px;
  }
  .reviews-section .reviews-track{
    padding-left:14px;
    animation-duration:27s;
  }
  .reviews-section .review-card{
    flex-basis:68vw;
    max-width:242px;
    min-height:146px;
    padding:12px 13px;
  }
}
