/* BlastCo site styles */
body { margin:0; background:#FFFFFF; color:#2B2A28; font-family:'Public Sans', Helvetica, Arial, sans-serif; }
a { color:#C4470A; text-decoration:none; }
* { box-sizing:border-box; }
img { max-width:100%; }
details[open] .faq-x { transform:rotate(45deg); }
/* header */
.site-header { position:fixed; top:0; left:0; right:0; z-index:100; background:#FFFFFF; border-bottom:1px solid #E9E7E2; padding:0 24px; }
.site-header.scrolled { box-shadow:0 4px 16px rgba(0,0,0,0.08); }
.nav-desktop { display:flex; align-items:center; gap:26px; margin-left:auto; font-size:15px; font-weight:500; white-space:nowrap; }
.hdr-quote { display:inline-flex; }
.nav-mobile { display:none; margin-left:auto; align-items:center; gap:8px; }
.mobile-panel { display:none; }
.mobile-panel.open { display:flex; }
.dropdown-panel { display:none; }
.dropdown.open .dropdown-panel { display:block; }
/* sticky call bar */
.sticky-bar { display:none; position:fixed; left:0; right:0; bottom:0; z-index:120; height:56px; }
/* footer legal bar */
.legal-bar { display:flex; flex-direction:row; align-items:center; flex-wrap:wrap; gap:0 28px; }
.legal-bar .cr { margin-right:auto; }
/* trust strip: 4 across, then 2x2, then single column */
@media (max-width: 1280px) and (min-width: 561px) {
  .trust-grid { grid-template-columns:repeat(2, 1fr) !important; gap:40px 32px !important; }
  .trust-card { flex-direction:column !important; text-align:center; gap:12px !important; }
}
@media (max-width: 560px) {
  .trust-grid { grid-template-columns:1fr !important; }
}
/* 4-card grids: 4 across -> 2x2 -> 1 */
@media (max-width: 1120px) {
  .grid4 { grid-template-columns:repeat(2, 1fr) !important; }
}
@media (max-width: 620px) {
  .grid4 { grid-template-columns:1fr !important; }
}
/* responsive maps */
.map-wide { display:block; }
.map-narrow { display:none; }
@media (max-width: 1120px) {
  .nav-desktop { display:none; }
  .hdr-quote { display:none; }
  .nav-mobile { display:flex; }
  .sticky-bar { display:flex; }
  footer.with-bar { padding-bottom:56px !important; }
  .legal-bar { flex-direction:column; align-items:flex-start; gap:2px; }
  .ft-brand { order:-1; align-items:flex-start !important; text-align:left !important; }
  .ft-brand-inner { align-items:flex-start !important; }
  .legal-bar .cr { order:5; margin:24px 0 0 0; }
}
@media (max-width: 1030px) {
  .map-wide { display:none; }
  .map-narrow { display:block; }
}
@media (hover: hover) {
  a:hover { color:#8f3407; }
  .hv17vpwc5:hover { color:#E8560A !important; }
  .hvg9al98:hover { color:#000000 !important; }
  .hv10m3ovm:hover { background:#F6F5F2 !important; color:#141414 !important; }
  .hvo5rxo:hover { background:#F6F5F2 !important; }
  .hvdsdlnv:hover { background:#C4470A !important; color:#FFFFFF !important; }
  .hv3m2qn4:hover { color:#FFFFFF !important; }
  .hv1kwxp4t:hover { border-color:#141414 !important; color:inherit !important; }
  .hv91mhhk:hover { color:#8f3407 !important; }
  .hv1konehz:hover { background:#FFFFFF !important; color:#141414 !important; }
  .hv8sc52j:hover { color:#C4470A !important; background:#F6F5F2 !important; border-color:#C4470A !important; }
  .hvq6t1y4:hover { border-color:#141414 !important; color:#141414 !important; }
  .hv1xl4slr:hover { color:#C4470A !important; }
  .hv5z9sts:hover { background:#C4470A !important; }
}
