/* Shared quick-contact control; type sizes come from typography.css. */
#floating-contact{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:950;display:flex;flex-direction:column;align-items:flex-end;gap:12px;color:#181818}
#floating-contact [hidden]{display:none!important}
#floating-contact .floating-contact-toggle,#floating-contact .floating-contact-fallback{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:14px 20px;border:1px solid #c81020;border-radius:28px;background:#c81020;color:#fff;box-shadow:0 5px 20px rgba(0,0,0,.18);cursor:pointer}
#floating-contact .floating-contact-toggle:hover,#floating-contact .floating-contact-fallback:hover{background:#a30e1b;border-color:#a30e1b}
#floating-contact .floating-contact-toggle svg{flex:none}
#floating-contact .floating-contact-panel{width:316px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 112px - var(--floating-contact-lift,0px));background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.16);overflow:auto}
#floating-contact .floating-contact-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 20px 16px}
#floating-contact .floating-contact-heading h3{margin:0}
#floating-contact .floating-contact-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ddd;background:#fff;color:#666;cursor:pointer;flex:none}
#floating-contact .floating-contact-panel nav{padding:0 20px 12px}
#floating-contact .floating-contact-panel a{display:grid;grid-template-columns:1fr 22px;align-items:center;gap:4px 12px;padding:16px 0;border-top:1px solid #ddd;color:#181818}
#floating-contact .floating-contact-panel a small{grid-column:1;color:#777;margin:0;display:block;overflow-wrap:anywhere}
#floating-contact .floating-contact-panel a i{grid-column:2;grid-row:1/3;color:#c81020;font-style:normal;text-align:right}
#floating-contact .floating-contact-panel a:hover{color:#c81020}
#floating-contact :is(a,button):focus-visible{outline:2px solid #181818;outline-offset:4px}
body.menu-open #floating-contact,body.pd-image-open #floating-contact,body.lightbox-open #floating-contact{visibility:hidden;pointer-events:none}
@media(max-width:767px){
 #floating-contact{right:14px;bottom:calc(16px + env(safe-area-inset-bottom) + var(--floating-contact-lift,0px))}
 #floating-contact .floating-contact-toggle,#floating-contact .floating-contact-fallback{min-height:48px;padding:11px 15px;gap:8px}
 #floating-contact .floating-contact-panel{width:min(316px,calc(100vw - 28px))}
}
@media print{#floating-contact{display:none!important}}
.tt-footer-contact{display:flex;flex-wrap:wrap;gap:16px 24px;padding-bottom:32px}
.tt-footer-address{flex-basis:100%;font-style:normal;line-height:1.7}
