/* Keep the language control consistent with the existing header on every template. */
#omoHeader .__header-content { gap: 1.5rem; }
#omoHeader .__brand { order: 1; flex-shrink: 0; }
#omoHeader #omoNav { order: 2; min-width: 0; }
#omoHeader .omo-header-actions {
  order: 3;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}
#omoHeader .omo-header-actions > .__utils { display: flex; align-items: center; gap: 0.75rem; }
#omoHeader .omo-header-actions .__utils .__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 2.75rem;
  padding: 0 1.25rem;
  border: 1px solid transparent;
  border-radius: 0.75rem;
  background: #12083e;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background-color 200ms;
}
#omoHeader .omo-header-actions .__utils .__cta:hover { background: #5e2dff; }
#omoHeader .omo-header-actions .__utils .__cta:focus-visible { outline: 2px solid #5e2dff; outline-offset: 3px; }
#omoHeader .omo-header-actions .__utils-m { margin-left: 0; }
#omoHeader .omo-language-control {
  position: relative;
  z-index: 1001;
  flex-shrink: 0;
  height: 2.75rem;
  color: #12083e;
}
#omoHeader .omo-language-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  box-sizing: border-box;
  height: 100%;
  min-width: 6.25rem;
  padding: 0 1rem;
  border: 1px solid rgb(94 45 255 / 22%);
  border-radius: 0.75rem;
  background: rgb(255 255 255 / 85%);
  color: #12083e;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  list-style: none;
  transition: border-color 200ms, background-color 200ms;
}
#omoHeader .omo-language-trigger::-webkit-details-marker { display: none; }
#omoHeader .omo-language-trigger::marker { content: ''; }
#omoHeader .omo-language-trigger > svg { width: 1.125rem; height: 1.125rem; display: block; flex-shrink: 0; }
#omoHeader .omo-language-trigger > .omo-language-chevron { width: 0.875rem; height: 0.875rem; color: #8a80a8; transition: transform 180ms; }
#omoHeader .omo-language-control [data-lang-code] { display: none; }
#omoHeader .omo-language-trigger:hover, #omoHeader .omo-language-control[open] > summary { border-color: #bba7f9; background: #fff; }
#omoHeader .omo-language-trigger:focus-visible { outline: 2px solid #8a64ed; outline-offset: 3px; }
#omoHeader .omo-language-control[open] .omo-language-chevron { transform: rotate(180deg); }
#omoHeader .omo-language-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 0.625rem);
  width: min(13.75rem, calc(100vw - 2rem));
  max-height: min(25rem, calc(100dvh - 5.75rem));
  overflow-y: auto;
  overscroll-behavior: contain;
  box-sizing: border-box;
  padding: 0.5rem;
  border: 1px solid rgb(18 8 62 / 7%);
  border-radius: 1rem;
  box-shadow: 0 1rem 3rem rgb(18 8 62 / 12%), 0 0.25rem 0.75rem rgb(18 8 62 / 4%);
  color: #12083e;
  background: #fff;
  animation: omo-language-reveal 160ms ease-out;
}
#omoHeader .omo-language-menu-label { padding: 0.625rem 0.75rem; margin: 0 0 0.25rem; color: #8a80a8; font-size: 0.75rem; font-weight: 500; line-height: 1.5; }
#omoHeader .omo-language-menu a { display: flex; align-items: center; justify-content: space-between; gap: 1rem; box-sizing: border-box; min-height: 2.5rem; padding: 0.5rem 0.75rem; border-radius: 0.625rem; font-size: 0.9375rem; font-weight: 500; line-height: 1.5; color: #352b50; text-decoration: none; transition: color 150ms, background-color 150ms; }
#omoHeader .omo-language-menu a > svg { width: 1.125rem; height: 1.125rem; flex-shrink: 0; opacity: 0; }
#omoHeader .omo-language-menu a[aria-current="page"] { color: #6737dc; background: #f0eaff; font-weight: 700; }
#omoHeader .omo-language-menu a[aria-current="page"] > svg { opacity: 1; }
#omoHeader .omo-language-menu a:hover { color: #6737dc; background: #f6f2ff; }
#omoHeader .omo-language-menu a:focus-visible { outline: 2px solid #b59aef; outline-offset: -2px; background: #f6f2ff; }
@keyframes omo-language-reveal { from { opacity: 0; transform: translateY(-0.375rem); } to { opacity: 1; transform: translateY(0); } }
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ { overflow-wrap: break-word; }
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ h1,
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ h2,
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ h3,
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ p,
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ li { word-break: normal; }
html[data-omo-lang]:not([data-omo-lang="ko"]) #omoNav .__gnb { gap: 1.75rem; }
html[data-omo-lang]:not([data-omo-lang="ko"]) .omo-cta-btn { height: auto; min-height: 2.75em; padding-top: 0.5em; padding-bottom: 0.5em; }
html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ .__fs-heading-xxxl { font-size: clamp(2.75rem, 6vw, 6.5rem); }
html[data-omo-lang]:not([data-omo-lang="ko"]) #mainKV .__spec {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  font-size: 1.5rem;
}
html[data-omo-lang]:not([data-omo-lang="ko"]) #mainKV .__spec .__split { display: none; }
html[data-omo-lang]:not([data-omo-lang="ko"]) #mainProducts .__product .__grid .__txt { min-width: 0; }
html[data-omo-lang]:not([data-omo-lang="ko"]) #mainLocalSolutions .omo-local-solution-cta { gap: 0.75rem; }
@media screen and (max-width: 1023px) {
  #omoHeader .__header-content { gap: 0.75rem; }
  #omoHeader .omo-header-actions { gap: 0.5rem; }
  #omoHeader .omo-header-actions > .__utils { display: none; }
  #omoHeader .omo-language-control [data-lang-name] { display: none; }
  #omoHeader .omo-language-control [data-lang-code] { display: inline; }
  #omoHeader .omo-language-trigger { min-width: 3.25rem; padding: 0 0.625rem; gap: 0.375rem; }
  #omoHeader .omo-language-trigger > .omo-language-chevron { display: none; }
  #omoHeader .__utils-m .__start, #omoHeader .__utils-m .__toggle { height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 0.75rem; }
  #omoHeader .__utils-m .__toggle { width: 2.75rem; }
}
@media screen and (max-width: 479px) {
  #omoHeader .__utils-m .__start { display: none; }
  #omoHeader .__header-content .__brand img { max-width: 44vw; height: auto; max-height: 1.375rem; }
  html[data-omo-lang]:not([data-omo-lang="ko"]) #mainKV .__spec { grid-template-columns: 1fr; gap: 0.5rem; font-size: 1rem; }
  html[data-omo-lang]:not([data-omo-lang="ko"]) #mainKV .__spec .__split { display: none; }
  html[data-omo-lang]:not([data-omo-lang="ko"]) .__OMOPLAY__ .__fs-heading-xxxl { font-size: 2.75rem; }
}
@media (prefers-reduced-motion: reduce) { #omoHeader .omo-language-trigger, #omoHeader .omo-language-chevron, #omoHeader .omo-language-menu a, #omoHeader .omo-header-actions .__utils .__cta { transition: none; } #omoHeader .omo-language-menu { animation: none; } }

#omoFooter .omo-locale-links { display: flex; flex-wrap: wrap; gap: 0.75rem 1.5rem; margin-top: 2rem; font-size: 0.875rem; }
#omoFooter .omo-locale-links a { color: inherit; opacity: 0.75; text-underline-offset: 0.25rem; }
#omoFooter .omo-locale-links a[aria-current], #omoFooter .omo-locale-links a:hover, #omoFooter .omo-locale-links a:focus-visible { opacity: 1; text-decoration: underline; }
