/* Scoped additions only; keep the site's existing Divi design and breakpoints. */
.ggsc-language-switcher {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
}
.ggsc-language-link {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  min-width: 2.75rem;
  min-height: 2.75rem;
  padding: .5rem !important;
  font-size: .8125rem !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  text-decoration: none;
}
.ggsc-language-link.is-current {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .3em;
}
.ggsc-language-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
#top-menu .ggsc-language-item,
#footer-bottom .ggsc-language-item,
#et-footer-nav .ggsc-language-item {
  display: inline-block !important;
  padding-inline-end: 0 !important;
  white-space: nowrap;
}
#top-menu .ggsc-language-item > a,
#top-menu .ggsc-language-item {
  float: none;
}
.ggsc-language-group {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
#top-menu .ggsc-language-group {
  margin-inline-start: 1.25rem;
  padding-inline-start: 1.25rem;
  border-inline-start: 1px solid rgba(255, 255, 255, .22);
}
#top-menu .ggsc-language-link {
  min-width: 0;
  min-height: 0;
  padding: .25rem .375rem !important;
  font-size: .75rem !important;
  letter-spacing: .1em;
  opacity: .72;
  transition: opacity .2s ease, color .2s ease;
}
#top-menu .ggsc-language-link:hover,
#top-menu .ggsc-language-link:focus-visible {
  opacity: 1;
}
#top-menu .ggsc-language-link.is-current {
  opacity: 1;
  color: #c8a45c !important;
  text-decoration: none;
}
.ggsc-language-sep {
  font-size: .75rem;
  line-height: 1;
  opacity: .45;
  margin-inline: .1rem;
}
.ggsc-language-fallback {
  background: #0f1f3d;
  color: #fff;
  padding: .5rem 1rem;
  text-align: center;
}
.ggsc-language-fallback a { color: #fff; }
@media (max-width: 980px) {
  .et_mobile_menu .ggsc-language-item {
    display: block !important;
    width: 100% !important;
    text-align: center;
    visibility: visible !important;
    margin-block-start: .5rem;
  }
  .et_mobile_menu .ggsc-language-item a {
    display: inline-flex !important;
    width: auto !important;
    padding: .75rem !important;
  }
  .et_mobile_menu .ggsc-language-item .ggsc-language-group {
    justify-content: center;
    width: 100%;
  }
  .et_mobile_menu .ggsc-language-item .ggsc-language-link.is-current {
    color: #c8a45c !important;
    text-decoration: none;
  }
  .et_mobile_menu .ggsc-language-item .ggsc-language-link {
    padding: .65rem .85rem !important;
    letter-spacing: .1em;
  }
  .et_mobile_menu .ggsc-language-item .ggsc-language-sep {
    opacity: .4;
  }
  #et-footer-nav .ggsc-language-item,
  #footer-bottom .ggsc-language-item {
    display: inline-block !important;
    visibility: visible !important;
  }
}
@media (min-width: 981px) {
  #top-menu.nav {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
  }
  #top-menu.nav > li {
    float: none;
    padding-inline-end: .35rem;
  }
  #top-menu.nav > li > a {
    white-space: nowrap;
  }
  #top-menu.nav > li.ggsc-language-item {
    display: flex !important;
    align-items: center;
    padding-inline-end: 0 !important;
  }
  #top-menu .ggsc-language-group {
    margin-inline-start: .45rem;
    margin-inline-end: .5rem;
    padding-inline-start: .5rem;
  }
}
@media (max-width: 980px) {
  ul.et_mobile_menu li.ggsc-language-item {
    border-block-start: 1px solid rgba(255, 255, 255, .12);
  }
  ul.et_mobile_menu li.ggsc-language-item a.ggsc-language-link {
    border: 0 !important;
    color: #fff !important;
    opacity: .68;
  }
  ul.et_mobile_menu li.ggsc-language-item a.ggsc-language-link.is-current {
    color: #c8a45c !important;
    opacity: 1;
  }
  ul.et_mobile_menu li.ggsc-language-item .ggsc-language-sep {
    display: inline-block;
    color: #fff;
    opacity: .38;
  }
}
@media (max-width: 980px) {
  ul#mobile_menu li.ggsc-language-item a.ggsc-language-link,
  ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link {
    border: 0 !important;
    color: #fff !important;
    opacity: .68;
  }
  ul#mobile_menu li.ggsc-language-item a.ggsc-language-link.is-current,
  ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link.is-current {
    color: #c8a45c !important;
    opacity: 1;
  }
}
@media (min-width: 981px) {
  #top-menu .ggsc-language-group {
    border-inline-start-color: rgba(255, 255, 255, .3);
  }
  #top-menu li.ggsc-language-item a.ggsc-language-link.is-current {
    color: #c8a45c !important;
    border-block-end: 2px solid #c8a45c;
  }
  #top-menu li.ggsc-language-item a.ggsc-language-link:hover {
    color: #c8a45c !important;
    opacity: 1;
  }
  #top-menu .ggsc-language-sep {
    font-size: .875rem;
    opacity: .5;
  }
}
@media (max-width: 980px) {
  ul#mobile_menu li.ggsc-language-item a.ggsc-language-link,
  ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link {
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .12em;
    color: rgba(255, 255, 255, .92) !important;
    opacity: 1;
  }
  ul#mobile_menu li.ggsc-language-item a.ggsc-language-link.is-current,
  ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link.is-current {
    color: #c8a45c !important;
  }
}
@media (min-width: 981px) {
  #main-header #top-menu li.ggsc-language-item a.ggsc-language-link,
  #main-header #top-menu li.ggsc-language-item a.ggsc-language-link:visited {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    text-shadow: none;
  }
  #main-header #top-menu li.ggsc-language-item a.ggsc-language-link.is-current,
  #main-header #top-menu li.ggsc-language-item a.ggsc-language-link:hover {
    color: #d8b976 !important;
  }
  #main-header #top-menu li.ggsc-language-item .ggsc-language-sep {
    color: #ffffff;
    font-size: 15px;
    opacity: .55;
  }
}
@media (max-width: 980px) {
  #main-header ul#mobile_menu li.ggsc-language-item a.ggsc-language-link,
  #main-header ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link {
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: .12em;
    color: #ffffff !important;
    opacity: 1 !important;
  }
  #main-header ul#mobile_menu li.ggsc-language-item a.ggsc-language-link.is-current,
  #main-header ul#mobile_menu_slide li.ggsc-language-item a.ggsc-language-link.is-current {
    color: #d8b976 !important;
  }
  #main-header ul#mobile_menu li.ggsc-language-item .ggsc-language-sep,
  #main-header ul#mobile_menu_slide li.ggsc-language-item .ggsc-language-sep {
    font-size: 16px;
    color: #ffffff;
    opacity: .55;
  }
}

/* Divi paints its closed search overlay (min-height 200px) over the top of the
   page on mobile, which reads as a large empty band under the header.
   Collapse it while closed; the open state keeps its own height. */
@media (max-width: 980px) {
  #main-header .et_search_form_container:not(.et_pb_search_visible) {
    min-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}
