
/* Blue Water Restoration — Unified Button System V9 */
:root{
  --bw-action-blue:#4576ff;
  --bw-action-blue-dark:#2856c7;
  --bw-action-navy:#123a78;
  --bw-action-text:#1f2937;
  --bw-action-soft:#eef4ff;
  --bw-action-line:#c7d7fb;
  --bw-action-shadow:0 12px 26px rgba(45,88,190,.18);
  --bw-action-shadow-hover:0 16px 34px rgba(45,88,190,.25);
}

/* Shared professional button appearance. Navigation buttons are excluded. */
.bw-site-button,
.bw-btn,
.bw-v4-actions a,
.bw-v4-actions button,
.bw-actions a,
.bw-actions button,
form button[type="submit"],
form input[type="submit"],
a[data-ux-btn]:not([data-ux*="Nav"]),
button[data-ux-btn]:not([data-ux*="Nav"]),
a[data-ux="ContentCardButton"],
a[data-aid*="CTA_BTN"]{
  -webkit-appearance:none !important;
  appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.52rem !important;
  min-height:48px !important;
  padding:.78rem 1.15rem !important;
  border:1px solid var(--bw-action-blue-dark) !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,var(--bw-action-blue) 0%,var(--bw-action-blue-dark) 100%) !important;
  color:#fff !important;
  font-family:"Open Sans",Arial,sans-serif !important;
  font-size:.92rem !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  letter-spacing:.015em !important;
  text-align:center !important;
  text-decoration:none !important;
  text-transform:none !important;
  cursor:pointer !important;
  box-shadow:var(--bw-action-shadow) !important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease,filter .18s ease !important;
  white-space:normal !important;
}

.bw-site-button:hover,
.bw-btn:hover,
.bw-v4-actions a:hover,
.bw-v4-actions button:hover,
.bw-actions a:hover,
.bw-actions button:hover,
form button[type="submit"]:hover,
form input[type="submit"]:hover,
a[data-ux-btn]:not([data-ux*="Nav"]):hover,
button[data-ux-btn]:not([data-ux*="Nav"]):hover,
a[data-ux="ContentCardButton"]:hover,
a[data-aid*="CTA_BTN"]:hover{
  transform:translateY(-2px) !important;
  box-shadow:var(--bw-action-shadow-hover) !important;
  filter:brightness(1.035) !important;
  text-decoration:none !important;
}

.bw-site-button:focus-visible,
.bw-btn:focus-visible,
.bw-v4-actions a:focus-visible,
.bw-v4-actions button:focus-visible,
.bw-actions a:focus-visible,
.bw-actions button:focus-visible,
form button[type="submit"]:focus-visible,
form input[type="submit"]:focus-visible,
a[data-ux-btn]:not([data-ux*="Nav"]):focus-visible,
button[data-ux-btn]:not([data-ux*="Nav"]):focus-visible,
a[data-ux="ContentCardButton"]:focus-visible,
a[data-aid*="CTA_BTN"]:focus-visible{
  outline:3px solid rgba(69,118,255,.28) !important;
  outline-offset:3px !important;
}

/* Secondary actions */
.bw-site-button--secondary,
.bw-btn-light,
.bw-btn-secondary,
.bw-v4-actions a:not([href^="tel:"]),
a[data-ux-btn="secondary"],
button[data-ux-btn="secondary"]{
  background:#fff !important;
  color:var(--bw-action-blue-dark) !important;
  border-color:var(--bw-action-line) !important;
  box-shadow:0 10px 22px rgba(45,88,190,.12) !important;
}

.bw-site-button--secondary:hover,
.bw-btn-light:hover,
.bw-btn-secondary:hover,
.bw-v4-actions a:not([href^="tel:"]):hover,
a[data-ux-btn="secondary"]:hover,
button[data-ux-btn="secondary"]:hover{
  background:var(--bw-action-soft) !important;
  color:#1d4ed8 !important;
  border-color:#a9c0f7 !important;
}

/* Phone / urgent contact actions */
.bw-site-button--phone,
.bw-btn-danger,
.bw-v4-actions a[href^="tel:"],
.bw-actions a[href^="tel:"]{
  background:linear-gradient(180deg,#174b98 0%,var(--bw-action-navy) 100%) !important;
  color:#fff !important;
  border-color:var(--bw-action-navy) !important;
  box-shadow:0 12px 26px rgba(18,58,120,.25) !important;
}

.bw-site-button--phone::before,
.bw-v4-actions a[href^="tel:"]::before,
.bw-actions a[href^="tel:"]::before{
  content:"☎";
  font-size:1rem;
  line-height:1;
}

/* Compact card and guide links */
.bw-cardlink,
.bw-site-button--compact{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.48rem !important;
  min-height:42px !important;
  margin-top:.35rem !important;
  padding:.62rem .88rem !important;
  border:1px solid var(--bw-action-line) !important;
  border-radius:10px !important;
  background:var(--bw-action-soft) !important;
  color:var(--bw-action-blue-dark) !important;
  font-family:"Open Sans",Arial,sans-serif !important;
  font-size:.86rem !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  letter-spacing:.01em !important;
  text-decoration:none !important;
  box-shadow:0 8px 18px rgba(45,88,190,.10) !important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease !important;
}

.bw-cardlink::after,
.bw-site-button--compact::after{
  content:"→";
  font-size:1rem;
  line-height:1;
  transition:transform .18s ease !important;
}

.bw-cardlink:hover,
.bw-site-button--compact:hover{
  transform:translateY(-1px) !important;
  background:#e5eeff !important;
  border-color:#abc0f4 !important;
  box-shadow:0 12px 24px rgba(45,88,190,.16) !important;
  text-decoration:none !important;
}

.bw-cardlink:hover::after,
.bw-site-button--compact:hover::after{
  transform:translateX(3px) !important;
}

/* GoDaddy generated content buttons */
a[data-ux="ContentCardButton"],
a[data-aid*="CONTENT_CTA_BTN"]{
  min-height:44px !important;
  padding:.7rem 1rem !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--bw-action-blue-dark) !important;
  border-color:var(--bw-action-line) !important;
  box-shadow:0 9px 20px rgba(45,88,190,.12) !important;
}

a[data-ux="ContentCardButton"]::after,
a[data-aid*="CONTENT_CTA_BTN"]::after{
  content:"→";
  font-weight:900;
}

/* Form actions and submit controls */
.bw-v4-actions,
.bw-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:.75rem !important;
}

form button[type="submit"],
form input[type="submit"]{
  border:0 !important;
}

/* Safe disabled/busy state */
.bw-site-button[aria-disabled="true"],
.bw-site-button:disabled,
button:disabled,
input[type="submit"]:disabled{
  opacity:.58 !important;
  cursor:not-allowed !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Cookie consent should remain prominent but consistent. */
[data-aid="FOOTER_COOKIE_CLOSE_RENDERED"]{
  border-radius:10px !important;
  font-weight:800 !important;
}

@media(max-width:680px){
  .bw-actions .bw-site-button,
  .bw-actions .bw-btn,
  .bw-v4-actions .bw-site-button,
  .bw-v4-actions a,
  .bw-v4-actions button,
  form button[type="submit"],
  form input[type="submit"]{
    width:100% !important;
  }

  .bw-cardlink,
  .bw-site-button--compact{
    width:auto !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .bw-site-button,
  .bw-btn,
  .bw-cardlink,
  .bw-site-button--compact,
  a[data-ux-btn],
  button[data-ux-btn]{
    transition:none !important;
  }
  .bw-site-button:hover,
  .bw-btn:hover,
  .bw-cardlink:hover,
  a[data-ux-btn]:hover,
  button[data-ux-btn]:hover{
    transform:none !important;
  }
}
