.camio-language-switcher { align-items: center; background: #fff; border-radius: 999px; box-shadow: 0 4px 16px rgba(31, 42, 68, .2); display: flex; flex-direction: row-reverse; padding: .2rem; position: fixed; right: 1rem; top: 1rem; z-index: 4000; }
.camio-language-switcher__toggle, .camio-language-switcher__menu a { border: 2px solid transparent; border-radius: 50%; box-sizing: border-box; display: block; flex: none; height: 2.1rem; overflow: hidden; text-decoration: none; transition: border-color .2s, transform .2s; width: 2.1rem; }
.camio-language-switcher__toggle { background: transparent; border-color: rgba(200, 55, 55, .5); cursor: pointer; padding: 0; }
.camio-language-switcher__menu { align-items: center; display: flex; flex-direction: row; gap: .3rem; list-style: none; margin: 0; max-width: 0; opacity: 0; overflow: hidden; padding: 0; transform: translate(.6rem); transition: max-width .35s, opacity .25s, margin-right .35s, transform .35s; }
.camio-language-switcher.is-open .camio-language-switcher__menu { margin-right: .3rem; max-width: 14rem; opacity: 1; transform: translate(0); }
.camio-language-switcher__menu li { flex: none; margin: 0; }
.camio-language-switcher__menu a:hover { border-color: rgba(200, 55, 55, .55); transform: translateY(-1px); }
.camio-language-switcher__flag { background-position: center; background-repeat: no-repeat; background-size: cover; border-radius: 50%; display: block; height: 100%; width: 100%; }
.camio-language-switcher__flag--fr { background-image: url('flag-fr.svg'); }
.camio-language-switcher__flag--en { background-image: url('flag-gb.svg'); }
.camio-language-switcher__flag--de { background-image: url('flag-de.svg'); }
.camio-language-switcher__flag--es { background-image: url('flag-es.svg'); }
.camio-language-switcher__toggle:focus-visible, .camio-language-switcher__menu a:focus-visible { outline: 3px solid #2878bc; outline-offset: 3px; }
.camio-header h1 { padding-right: 3rem; }
.camio-pro__header { padding-right: max(104px, calc((100vw - 1240px) / 2)); }
@media (max-width: 560px) { .camio-header { padding: 14px 72px 12px 18px; } .camio-header h1 { padding-right: 0; } .camio-pro__header { padding-right: 72px; } }
@media (prefers-reduced-motion: reduce) { .camio-language-switcher * { transition: none !important; } }
