/* v84: "Text us" links next to every call option. Phone numbers and text links never wrap. */
a[href^="sms:"], a[href^="tel:"], .s360-or { white-space: nowrap; }
.s360-sms { text-decoration: underline; }
.phone-cta-bar { align-items: center; }
.phone-cta-bar .s360-sep { opacity: .55; margin: 0 10px; }
.site-nav .s360-text-btn { padding: 10px 16px; }
@media (max-width: 1100px) and (min-width: 801px) { .site-nav .s360-text-btn { padding-left: 12px; padding-right: 12px; } }
@media (max-width: 800px) {
  .site-nav .s360-text-btn { display: none; }
  .nav-toggle:checked ~ .site-nav .s360-text-btn { display: block; }
}
.ep-btns, .hero-ctas, .cta-row { flex-wrap: wrap; }
/* home page sticky bar: Call | Text | Estimate */
.mcta { grid-template-columns: auto auto 1fr !important; }
.mcta-text svg { width: 18px; height: 18px; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linejoin: round; }
.hdr-sms { margin-left: 14px; }
/* landing pages: mobile bar Call | Text | Free Estimate */
div.bar { grid-template-columns: 1fr 1fr 1.3fr !important; }
div.bar .btn { padding-left: 4px !important; padding-right: 4px !important; font-size: 15px !important; white-space: nowrap; }
.top .s360-text-btn { white-space: nowrap; }
@media (max-width: 360px) { .top .btn { padding: 9px 10px !important; font-size: 14px !important; } }
