/* Floating WhatsApp contact card - matches supplied reference */
.whatsapp-floating-contact{position:fixed;left:auto;right:12px;bottom:16px;z-index:9999;width:290px;min-height:68px;box-sizing:border-box;display:flex;align-items:center;gap:11px;padding:9px 16px 9px 9px;background:#fff;border:1px solid #e3e9e6;border-radius:999px;box-shadow:0 10px 28px rgba(22,48,40,.14);color:#18362f;text-decoration:none;font-family:"Plus Jakarta Sans",Arial,sans-serif;-webkit-tap-highlight-color:transparent}
.whatsapp-floating-contact:hover{color:#18362f;text-decoration:none;box-shadow:0 12px 32px rgba(22,48,40,.18)}
.whatsapp-floating-contact:focus-visible{outline:3px solid #111827;outline-offset:3px}
.whatsapp-floating-contact__icon{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:grid;place-items:center;background:#25d366}
.whatsapp-floating-contact__icon svg{display:block;width:25px;height:25px;fill:#fff}
.whatsapp-floating-contact__copy{display:flex;min-width:0;flex-direction:column;justify-content:center;line-height:1.16}
.whatsapp-floating-contact__title{display:block;color:#18362f;font-size:13px;font-weight:700;letter-spacing:-.18px;white-space:nowrap}
.whatsapp-floating-contact__title strong{font-weight:800}
.whatsapp-floating-contact__subtitle{display:block;margin-top:3px;color:#667772;font-size:12px;font-weight:400;letter-spacing:-.08px;white-space:nowrap}
@media (max-width:420px){.whatsapp-floating-contact{left:auto;right:10px;bottom:10px;width:min(290px,calc(100vw - 20px));min-height:68px}.whatsapp-floating-contact__title{font-size:13px}.whatsapp-floating-contact__subtitle{font-size:12px}}
@media (prefers-reduced-motion:reduce){.whatsapp-floating-contact{scroll-behavior:auto}}

/* Mobile header collision fix: keep brand, Menu and WhatsApp CTA in separate grid cells. */
@media (max-width:560px){
  .site-header,.site-header.site-header--internal{grid-template-columns:minmax(0,1fr) auto auto;column-gap:7px}
  .mobile-menu{position:relative;top:auto;right:auto;grid-column:2;justify-self:end;align-self:center}
  .mobile-menu summary{width:42px;height:42px}
  .mobile-menu nav{right:auto;left:50%;transform:translateX(-50%)}
  .header-cta{grid-column:3;justify-self:end;min-width:0;width:auto;height:42px;padding:8px 9px;gap:4px;font-size:10px;white-space:nowrap}
  .header-cta svg{width:12px;height:12px;flex:0 0 12px}
}
@media (max-width:360px){
  .site-header,.site-header.site-header--internal{column-gap:4px}
  .brand{gap:6px;min-width:0}
  .brand-symbol{width:36px;height:36px}
  .brand-name small{display:none}
  .brand-name strong{font-size:20px}
  .mobile-menu summary{width:38px;height:38px;font-size:7px}
  .header-cta{height:38px;padding:6px 7px;gap:3px;font-size:8.5px}
  .header-cta svg{width:10px;height:10px;flex-basis:10px}
}
