#up-language { display: inline-flex; align-items: center; padding: 3px; gap: 2px; background: #ffffff05; border: 1px solid #d5a35f40; border-radius: 30px; flex-shrink: 0; }
#up-language button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 8px 10px; min-height: 36px; border: 1px solid transparent; border-radius: 24px; color: #bcb8b1; background: transparent; font: 600 10px/1 var(--font, sans-serif); letter-spacing: .4px; transition: background .2s, color .2s; }
#up-language button:hover { color: #fff; background: #ffffff0d; }
#up-language button[aria-pressed="true"] { color: #18161a; background: #dab578; border-color: #e8c892; }
#up-language button:focus-visible { outline: 2px solid #dab578; outline-offset: 3px; }
#up-language svg { width: 19px; height: 13px; display: block; border-radius: 2px; }
.up-translation-engine { display: none !important; }
html.up-custom-translation body { top: 0 !important; }
html.up-custom-translation iframe.skiptranslate, html.up-custom-translation .goog-te-banner-frame, html.up-custom-translation #goog-gt-tt { display: none !important; }
.nav-shell:has(#up-language) nav a, .nav-shell:has(#up-language) .nav-cta { white-space: nowrap; }
@media(min-width: 901px) and (max-width: 1400px) { .nav-shell:has(#up-language) nav { gap: 18px; } }
.up-contact-details { min-width: 190px; }
.up-contact-details a { display: block; margin-top: 10px; overflow-wrap: anywhere; }
.up-footer-brand { min-width: 0; }
.up-social-links { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.up-social-links a { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1px solid #dab57860; border-radius: 50%; color: #dab578; transition: color .2s, background .2s, border-color .2s; }
.up-social-links a:hover { color: #18161a; background: #dab578; border-color: #dab578; }
.up-social-links a:focus-visible { outline: 2px solid #dab578; outline-offset: 4px; }
.up-social-links svg { display: block; width: 18px; height: 18px; flex-shrink: 0; }
.footer-columns:has(.up-contact-details) { grid-template-columns: 1.1fr repeat(4, 1fr); }
.up-floating-whatsapp { position: fixed; bottom: max(24px, env(safe-area-inset-bottom)); right: 24px; z-index: 40; display: flex; align-items: center; gap: 9px; padding: 14px 18px; border-radius: 40px; background: #dab578; color: #18161a; box-shadow: 0 6px 24px #0004; font: 600 13px var(--font, sans-serif); text-decoration: none; border: 1px solid #efd6ad; }
.up-floating-whatsapp:hover { background: #edcb94; }
.up-floating-whatsapp svg { display: block; width: 24px; height: 24px; flex-shrink: 0; }
.up-floating-whatsapp:focus-visible { outline: 2px solid #101010; outline-offset: 4px; }
@media(max-width: 1250px) { .nav-shell:has(#up-language) { gap: 16px; } .nav-shell:has(#up-language) .nav-cta { display: none !important; } }
@media(max-width: 900px) { #up-language { margin-left: auto; } .footer-columns:has(.up-contact-details) { grid-template-columns: repeat(2, 1fr); } }
@media(max-width: 640px) { .nav-shell:has(#up-language) { gap: 8px; } .up-floating-whatsapp { right: 16px; bottom: 16px; padding: 14px; } .up-floating-whatsapp span { display: none; } #up-language { padding: 2px; gap: 0; } #up-language button { padding: 8px 6px; min-height: 36px; gap: 4px; font-size: 9px; } #up-language svg { width: 14px; height: 10px; } .footer-columns:has(.up-contact-details) { grid-template-columns: 1fr; } }
@media(max-width: 380px) { #up-language svg { display: none; } #up-language button { padding-inline: 9px; } }
