.brand-mark{display:none;}
.brand{gap:0;}
.brand-copy strong{font-size:1.08rem;}
.brand-copy span{font-size:.65rem;}

.mobile-actions{position:fixed;left:auto;right:max(18px,env(safe-area-inset-right));bottom:max(18px,calc(12px + env(safe-area-inset-bottom)));z-index:140;width:60px;height:60px;display:block;visibility:visible;opacity:1;transform:none;transition:opacity 140ms ease,transform 140ms ease;}
.mobile-action{width:60px;height:60px;min-height:60px;display:grid;place-items:center;padding:0;border:2px solid rgba(255,255,255,.94);border-radius:50%;background:var(--navy);box-shadow:0 10px 28px rgba(10,37,50,.28);color:#fff;text-decoration:none;transition:background-color 160ms ease,transform 160ms ease,box-shadow 160ms ease;}
.mobile-action:hover{background:var(--red);transform:translateY(-2px);box-shadow:0 13px 30px rgba(10,37,50,.32);}
.mobile-action:active{transform:translateY(0) scale(.97);}
.mobile-action svg{width:27px;height:27px;}
body.has-form-focus .mobile-actions{opacity:0;pointer-events:none;transform:translateY(14px);}

@media (max-width:859px){
  body{padding-bottom:calc(82px + env(safe-area-inset-bottom));}
  .mobile-actions{right:max(18px,env(safe-area-inset-right));bottom:max(18px,calc(12px + env(safe-area-inset-bottom)));}
  .contact-dialog{position:fixed;left:50%;right:auto;bottom:max(16px,env(safe-area-inset-bottom));width:min(calc(100% - 40px),390px);max-width:390px;height:auto;max-height:min(calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)),calc(100svh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));margin:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:16px;transform:translateX(-50%);-webkit-overflow-scrolling:touch;}
  .contact-dialog[open]{display:block;}
  .contact-dialog__header{position:sticky;top:0;z-index:4;background:var(--white);}
  .contact-dialog .service-form{display:block;width:100%;max-width:100%;overflow:visible;padding:18px 22px calc(36px + env(safe-area-inset-bottom));box-sizing:border-box;-webkit-overflow-scrolling:auto;}
  .contact-dialog .form-grid,.contact-dialog .form-grid label{min-width:0;}
  .contact-dialog input,.contact-dialog select,.contact-dialog textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;}
}

@media (min-width:860px){
  .mobile-actions{right:24px;bottom:24px;}
  body.has-form-focus .mobile-actions{transform:translateY(14px);}
}

@media (min-width:1200px){
  .mobile-actions{right:32px;bottom:32px;}
  .brand-copy strong{font-size:1.12rem;}
}

@media (prefers-reduced-motion:reduce){
  .mobile-action,.mobile-actions{transition:none;}
}
