/* v5.37.12 — device-aware English / Spanish selector */
.cco-language-switcher{position:relative;display:inline-flex;align-items:center;z-index:30;font-family:var(--cco-body-font,inherit)}
.cco-language-switcher__button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:92px;height:46px;padding:0 14px;border:1px solid rgba(7,59,120,.14);border-radius:16px;background:#fff;color:#073b78;box-shadow:0 8px 20px rgba(6,47,101,.08);font-family:inherit;font-size:13px;font-weight:800;line-height:1;letter-spacing:.04em;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.cco-language-switcher__button:hover,.cco-language-switcher.is-open .cco-language-switcher__button{transform:translateY(-1px);border-color:rgba(7,85,179,.32);box-shadow:0 12px 26px rgba(6,47,101,.14)}
.cco-language-switcher__button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.cco-language-switcher__chevron{font-size:14px;line-height:1;transform:translateY(-1px);opacity:.72}
.cco-language-switcher__menu{position:absolute;top:calc(100% + 10px);right:0;width:220px;padding:8px;border:1px solid #dbe6f2;border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(4,43,86,.18);z-index:100002}
.cco-language-switcher__menu[hidden]{display:none!important}
.cco-language-switcher__menu button{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;min-height:48px;padding:9px 11px;border:0;border-radius:11px;background:transparent;color:#0b2748;text-align:left;cursor:pointer;font:inherit}
.cco-language-switcher__menu button:hover,.cco-language-switcher__menu button.is-active{background:#edf6ff;color:#0755b3}
.cco-language-switcher__menu strong{font-size:13px;font-weight:850}
.cco-language-switcher__menu small{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.68}
.cco-language-switcher__menu button[data-cco-language-choice="auto"]{grid-template-columns:1fr}
.cco-language-switcher__menu button[data-cco-language-choice="auto"] small{text-transform:none;letter-spacing:0;font-size:11px}
@media(max-width:980px){.cco-language-switcher__button{min-width:70px;width:auto;height:44px;padding:0 11px;border-radius:14px}.cco-language-switcher__chevron{display:none}.cco-language-switcher__menu{right:0}}
@media(max-width:520px){.cco-language-switcher__button{min-width:58px;height:42px;padding:0 9px;gap:6px;border-radius:13px}.cco-language-switcher__button svg{width:17px;height:17px}.cco-language-switcher__menu{position:fixed;top:auto;left:12px;right:12px;bottom:86px;width:auto;max-width:none}.cco-el-header__actions{gap:7px}}
.cco-mobile-site-menu__language{margin:12px 0 16px}
.cco-mobile-site-menu__language .cco-language-switcher{display:flex;width:100%}
.cco-mobile-site-menu__language .cco-language-switcher__button{width:100%;justify-content:flex-start;min-height:50px;padding:0 14px}
.cco-mobile-site-menu__language .cco-language-switcher__button [data-cco-language-current]{margin-right:auto}
.cco-mobile-site-menu__language .cco-language-switcher__menu{position:static;width:100%;margin-top:8px;box-shadow:none;background:#fff}
@media(max-width:520px){.cco-mobile-site-menu__language .cco-language-switcher__menu{position:static;left:auto;right:auto;bottom:auto;width:100%}}

/* v5.37.14 — smaller, cleaner header language control.
   !important sizing prevents theme/Elementor global button rules from inflating the selector. */
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__button{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:auto!important;
  min-width:66px!important;
  max-width:78px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:0 9px!important;
  margin:0!important;
  gap:6px!important;
  border:1px solid color-mix(in srgb,var(--cco-primary,#0B4DB8) 18%,#d7e3ef)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--cco-primary,#0B4DB8)!important;
  box-shadow:0 4px 12px rgba(4,43,86,.08)!important;
  font-family:var(--cco-body-font,inherit)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  line-height:1!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__button:hover,
.cco-language-switcher:not(.is-mobile-menu).is-open .cco-language-switcher__button{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--cco-primary,#0B4DB8) 34%,#d7e3ef)!important;
  background:color-mix(in srgb,var(--cco-primary,#0B4DB8) 4%,#fff)!important;
  box-shadow:0 7px 16px rgba(4,43,86,.11)!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__button svg{
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  max-width:15px!important;
  flex:0 0 15px!important;
  stroke-width:1.85!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__chevron{display:none!important}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu{
  top:calc(100% + 7px)!important;
  width:188px!important;
  padding:6px!important;
  border-radius:13px!important;
  border-color:color-mix(in srgb,var(--cco-primary,#0B4DB8) 14%,#dbe6f2)!important;
  box-shadow:0 14px 34px rgba(4,43,86,.16)!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu button{
  min-height:40px!important;
  padding:7px 9px!important;
  border-radius:9px!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu button:hover,
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu button.is-active{
  background:color-mix(in srgb,var(--cco-primary,#0B4DB8) 7%,#fff)!important;
  color:var(--cco-primary,#0B4DB8)!important;
}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu strong{font-size:12px!important}
.cco-language-switcher:not(.is-mobile-menu) .cco-language-switcher__menu small{font-size:9px!important}

/* Keep the selector easy to tap when it is shown as a full row inside the mobile site menu. */
.cco-mobile-site-menu__language .cco-language-switcher__button{
  width:100%!important;
  max-width:none!important;
  height:44px!important;
  min-height:44px!important;
  max-height:none!important;
  padding:0 12px!important;
  border-radius:12px!important;
  justify-content:flex-start!important;
}
