/* Public-site refinements, scoped to the existing consent and contact controls. */
.cookie-notice{max-width:1200px;padding:16px 22px;gap:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;bottom:max(16px,env(safe-area-inset-bottom));border-radius:24px 24px 12px 12px}
.cookie-notice h2{font-size:25px;margin:2px 0 5px}
.cookie-notice p{font-size:13px;line-height:1.55;max-width:660px}
.cookie-notice .eyebrow{font-size:10px}
.cookie-notice .cookie-actions{margin:0;flex-wrap:nowrap;gap:8px}
.cookie-notice .cookie-actions button{flex:none;min-height:44px;padding:10px 13px;font-size:12px}
.elementor-widget-contact-buttons .e-contact-buttons{
 --e-contact-buttons-button-bg:#173d4b!important;
 --e-contact-buttons-button-bg-hover:#285665!important;
 --e-contact-buttons-button-icon:#f8f5ee!important;
 --e-contact-buttons-button-icon-hover:#f8f5ee!important;
 --e-contact-buttons-top-bar-bg:#173d4b!important;
 --e-contact-buttons-top-bar-title:#f8f5ee!important;
 --e-contact-buttons-top-bar-subtitle:#f8f5ee!important;
 --e-contact-buttons-send-button-bg:#173d4b!important;
 --e-contact-buttons-send-button-bg-hover:#285665!important;
 --e-contact-buttons-send-button-icon:#f8f5ee!important;
 --e-contact-buttons-chat-box-bg:#f8f5ee!important;
 --e-contact-buttons-message-bubble-chat-bg:#f2efe7!important;
 --e-contact-buttons-message-bubble-name:#173d4b!important;
 --e-contact-buttons-message-bubble-body:#173d4b!important;
 --e-contact-buttons-message-bubble-time:#58737b!important;
 --e-contact-buttons-box-shadow:0 8px 24px #173d4b22!important;
 --e-contact-buttons-chat-box-width:320px!important;
 --e-contact-buttons-horizontal-offset:20px!important;
 --e-contact-buttons-vertical-offset:max(20px,env(safe-area-inset-bottom))!important;
 font-family:'DM Sans',sans-serif;
}
.elementor-widget-contact-buttons .e-contact-buttons__send-cta{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;min-height:44px}
.elementor-widget-contact-buttons .e-contact-buttons__content-wrapper{max-width:calc(100vw - 32px)}
.elementor-widget-contact-buttons .e-contact-buttons__chat-button::before,
.elementor-widget-contact-buttons .e-contact-buttons__profile-image::after{display:none!important}
.elementor-widget-contact-buttons .e-contact-buttons__message-bubble-time{display:none}
/* Consent and modal choices take priority over a secondary floating control. */
body:has(.cookie-notice:not([hidden])) .elementor-widget-contact-buttons,
body:has(dialog[open]) .elementor-widget-contact-buttons{visibility:hidden;pointer-events:none}
@media(max-width:1000px){
 .cookie-notice{grid-template-columns:minmax(0,1fr);gap:12px;padding:16px 20px;max-width:720px}
 .cookie-notice .cookie-actions{justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:600px){
 .cookie-notice{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:14px 16px;gap:11px;max-height:55dvh}
 .cookie-notice h2{font-size:24px}
 .cookie-notice p{font-size:12px}
 .cookie-notice .cookie-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .cookie-notice .cookie-actions button{padding:9px 5px;font-size:11px;line-height:1.35;white-space:normal;min-height:46px}
 .elementor-widget-contact-buttons .e-contact-buttons{--e-contact-buttons-horizontal-offset:16px!important;--e-contact-buttons-vertical-offset:max(16px,env(safe-area-inset-bottom))!important;--e-contact-buttons-chat-box-width:calc(100vw - 32px)!important}
}
@media(prefers-reduced-motion:reduce){
 .elementor-widget-contact-buttons .e-contact-buttons,
 .elementor-widget-contact-buttons .e-contact-buttons *{animation:none!important;transition:none!important}
}
.santos-motion-quiet .elementor-widget-contact-buttons .e-contact-buttons,
.santos-motion-quiet .elementor-widget-contact-buttons .e-contact-buttons *{animation:none!important;transition:none!important}
