.language-picker { position: relative; flex: 0 0 auto; }
.language-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 10px 12px; border: 1px solid #d7effa32; border-radius: 24px; background: #ecfaff09; color: #f0f7fb; font: inherit; font-size: 12px; line-height: 1.5; white-space: nowrap; cursor: pointer; transition: background var(--ui-open,240ms) var(--ui-ease,ease), border-color var(--ui-open,240ms) ease; }
.language-trigger > svg { width: 18px; height: 18px; flex: 0 0 auto; }
.language-trigger > .language-chevron { width: 12px; height: 12px; transition: transform var(--ui-open,240ms) var(--ui-ease,ease); }
.language-trigger:hover, .language-trigger[aria-expanded="true"] { background: #d3f4ff1a; border-color: #b7ece177; }
.language-trigger[aria-expanded="true"] .language-chevron { transform: rotate(180deg); }
.language-trigger:focus-visible, .language-option:focus-visible { outline: 2px solid #a8ece1; outline-offset: 4px; }
.language-popover { position: absolute; z-index: 90; top: calc(100% + 14px); right: 0; width: 280px; max-width: calc(100vw - 40px); max-height: min(470px,calc(100svh - 150px)); overflow-y: auto; overscroll-behavior: contain; padding: 9px; border: 1px solid #bde7e43b; border-radius: 23px; color: #f0f7fb; background: #102331f5; backdrop-filter: blur(26px) saturate(1.2); -webkit-backdrop-filter: blur(26px) saturate(1.2); box-shadow: 0 24px 65px #0007,inset 0 1px 0 #f1ffff12; transform-origin: top right; }
.language-popover { opacity: 0; transform: translateY(-5px) scale(.975); transition: opacity var(--ui-close,160ms) var(--ui-ease,ease), transform var(--ui-close,160ms) var(--ui-ease,ease); }
.language-popover[data-open="true"] { opacity: 1; transform: none; transition-duration: var(--ui-open,240ms); }
.language-popover[data-open="false"] { pointer-events: none; }
.language-option { display: flex; justify-content: space-between; align-items: center; gap: 20px; width: 100%; min-height: 42px; padding: 10px 13px; border: 0; border-radius: 14px; background: transparent; color: inherit; font: inherit; font-size: 14px; line-height: 1.5; text-align: left; cursor: pointer; transition: background 180ms ease,color 180ms ease; }
.language-option:hover, .language-option:focus { background: #c1e9e215; }
.language-option[aria-selected="true"] { color: #b2eee2; background: #b2eee216; }
.language-option[aria-selected="true"]::after { content: '✓'; font-size: 14px; }
.language-option[aria-selected="false"]::after { content: ''; }
.faq-list summary > .faq-question { width: auto; height: auto; min-width: 0; border: 0; border-radius: 0; display: block; font-size: inherit; font-weight: inherit; color: inherit; background: transparent; transform: none !important; }
html:not([lang^="zh"]) .hero h1 { font-size: clamp(38px,4.2vw,68px); line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; white-space: normal; }
html[lang="th"] .hero h1 { line-height: 1.48; letter-spacing: 0; }
html[lang="ko"] .hero h1, html[lang="ja"] .hero h1 { font-size: clamp(36px,3.8vw,62px); line-height: 1.5; word-break: keep-all; }
html:not([lang^="zh"]) .section-heading h2, html:not([lang^="zh"]) .how-copy h2, html:not([lang^="zh"]) .request-copy h2, html:not([lang^="zh"]) .faq-section h2 { font-size: clamp(31px,3.4vw,52px); line-height: 1.3; }
html:not([lang^="zh"]) .site-header { gap: 17px; }
html:not([lang^="zh"]) .site-header .desktop-nav { gap: 22px; letter-spacing: 0; font-size: 13px; }
html:not([lang^="zh"]) .site-header .header-cta { letter-spacing: 0; gap: 12px; }
@media (max-width: 1120px) and (min-width: 981px) {
  .site-header { gap: 13px; }
  .site-header .desktop-nav, html:not([lang^="zh"]) .site-header .desktop-nav { gap: 17px; font-size: 12px; letter-spacing: 0; }
  .site-header .header-cta { padding-inline: 12px; gap: 10px; font-size: 12px; }
  .language-trigger { padding-inline: 10px; gap: 6px; }
}
@media (max-width: 980px) { .language-picker { margin-left: auto; } .site-header .header-cta { margin-left: 0; } }
@media (max-width: 650px) { .site-header .header-cta { display: none; } .language-trigger { min-height: 38px; } }
@media (max-width: 480px) {
  .language-trigger { gap: 6px; padding: 8px 10px; font-size: 11px; }
  .language-trigger > .language-chevron { display: none; }
  .language-popover { right: -37px; max-height: min(460px,calc(100svh - 125px)); width: min(280px,calc(100vw - 42px)); }
  html:not([lang^="zh"]) .site-header { gap: 10px; }
  html:not([lang^="zh"]) .hero h1 { font-size: clamp(35px,8.6vw,43px); }
  html[lang="ko"] .hero h1, html[lang="ja"] .hero h1 { font-size: clamp(32px,8vw,40px); }
}
@media (prefers-reduced-motion: reduce) { .language-popover, .language-trigger, .language-trigger > .language-chevron, .language-option { transition: none; } }
