.site-language { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; color: #244754; font: 13px system-ui, sans-serif; }
.site-language-picker { position: relative; flex: 0 0 120px; width: 120px; }
.site-language button { font: inherit; cursor: pointer; }
.site-language #site-language { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-height: 36px; padding: 6px 10px; border: 1px solid #aecad3; border-radius: 6px; background: #fff; color: #163944; text-align: left; }
.site-language #site-language[aria-expanded="true"] { border-color: #2289a3; }
.site-language button:focus-visible { outline: 3px solid #2289a3; outline-offset: 2px; }
.site-language-current { white-space: nowrap; }
.site-language-chevron { flex: 0 0 auto; width: 7px; height: 7px; margin: -3px 2px 0 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.site-language #site-language[aria-expanded="true"] .site-language-chevron { margin: 3px 2px 0 0; transform: rotate(225deg); }
.site-language-menu { position: absolute; z-index: 30; top: calc(100% + 4px); right: 0; display: grid; width: 100%; box-sizing: border-box; padding: 4px; border: 1px solid #aecad3; border-radius: 6px; background: #fff; box-shadow: 0 10px 24px rgba(15, 43, 54, 0.16); }
.site-language-menu[hidden] { display: none; }
.site-menu-toggle[hidden] { display: none; }
.site-header .site-menu-toggle, .site-drawer .site-menu-close { display: inline-grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid #d6dfdf; border-radius: 6px; background: transparent; color: #163944; cursor: pointer; font: 26px/1 system-ui, sans-serif; }
.site-header .site-menu-toggle[hidden] { display: none; }
.site-menu-toggle:focus-visible, .site-menu-close:focus-visible, .site-drawer a:focus-visible { outline: 3px solid #2289a3; outline-offset: 2px; }
.site-drawer { position: fixed; inset: 0 0 0 auto; box-sizing: border-box; width: min(85vw, 360px); max-width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; padding: max(20px, env(safe-area-inset-top)) 20px max(28px, env(safe-area-inset-bottom)); border: 0; background: #fffdf8; color: #171717; overflow-y: auto; overscroll-behavior: contain; }
.site-drawer[open] { display: flex; flex-direction: column; gap: 24px; animation: site-drawer-enter 180ms ease-out; }
.site-drawer::backdrop { background: rgb(0 0 0 / 38%); }
.site-drawer-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 20px; }
.site-drawer .nav { display: flex; flex: 0 0 auto; flex-direction: column; order: 0; width: 100%; margin: 0; gap: 4px; align-items: stretch; }
.site-drawer .nav a { display: flex; align-items: center; min-height: 44px; padding: 8px 12px; color: #244754; font-size: 16px; white-space: normal; overflow-wrap: anywhere; border-radius: 6px; }
.site-drawer .nav a:hover { background: #dff5fa; }
.site-drawer .site-language { display: flex; flex: 0 0 auto; flex-direction: column; align-items: stretch; gap: 12px; width: 100%; margin: auto 0 0; padding-top: 20px; border-top: 1px solid #ded9cf; }
.site-drawer .site-language-picker { flex: 0 0 auto; width: 100%; }
.site-drawer #site-language { display: none; }
.site-drawer .site-language-menu { position: static; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; padding: 0; gap: 4px; border: 0; box-shadow: none; background: transparent; }
.site-drawer .site-language-option { min-height: 44px; padding: 8px 2px; justify-content: center; font: 13px/1.3 system-ui, sans-serif; border: 1px solid #aecad3; }
.site-drawer .site-language-option::before { display: none; }
.site-drawer .site-language-option[aria-selected="true"] { background: #dff5fa; color: #123d48; border-color: #087896; font-weight: 700; }
.site-drawer .site-language > span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; }
.site-drawer .nav-cta { display: inline-flex; flex: 0 0 auto; min-height: 44px; width: 100%; padding: 10px 16px; background: #171717; color: #fff; border-radius: 8px; font: 750 14px/1.4 system-ui, sans-serif; text-align: center; white-space: normal; }
html.site-menu-open, html.site-menu-open body { overflow: hidden; }
@keyframes site-drawer-enter { from { transform: translateX(100%); } to { transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .site-drawer[open] { animation: none; } }
@media (max-width: 1180px) {
  .site-header.site-header { position: sticky; top: 0; display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 8px; min-height: 60px; height: 60px; padding: 8px 16px; background: #f7f5eff5; }
  .site-header > .nav, .site-header > .nav-cta, .site-header > .site-language { display: none; }
  .site-header.site-header .brand { flex: 1 1 auto; min-width: 0; gap: 8px; font: 750 15px/1.2 system-ui, sans-serif; letter-spacing: 0; }
  .site-header.site-header .brand > span:last-child { white-space: nowrap; overflow-wrap: normal; }
  .site-header.site-header .brand-mark, .site-header.site-header .brand img { flex: 0 0 30px; width: 30px; height: 30px; }
  main [id] { scroll-margin-top: 76px; }
}
.site-language-option { display: flex; align-items: center; gap: 6px; width: 100%; min-height: 34px; padding: 5px 7px; border: 0; border-radius: 4px; background: transparent; color: #163944; text-align: left; white-space: nowrap; }
.site-language-option::before { content: ""; flex: 0 0 12px; width: 12px; }
.site-language-option[aria-selected="true"]::before { content: "✓"; font-weight: 700; }
.site-language-option:hover, .site-language-option:focus-visible { background: #e7f5f8; }
.site-header { flex-wrap: wrap; row-gap: 10px; padding-top: 12px; padding-bottom: 12px; }
.site-header .nav { flex-wrap: wrap; align-items: center; row-gap: 10px; }
.site-header .nav a { white-space: nowrap; }
h1, h2, h3 { overflow-wrap: anywhere; }
.payment-language { display: flex; position: absolute; z-index: 4; top: 24px; right: 24px; }
.payment-language > span { color: #e4edf4; }
.success-page:has(.payment-language) { padding-top: 90px; }
html:not([lang="en"]) h1, html:not([lang="en"]) h2, html:not([lang="en"]) h3 { letter-spacing: 0; line-height: 1.25; overflow-wrap: anywhere; }
html:not([lang="en"]) .hero h1 { font-size: 52px; }
html:not([lang="en"]) .steps-hero h1 { font-size: 44px; }
html:not([lang="en"]) .success-title-row { min-width: 0; max-width: 100%; }
html:not([lang="en"]) .success-title-row h1 { font-size: 44px; white-space: normal; overflow-wrap: anywhere; }
html:not([lang="en"]) .success-actions a { white-space: normal; text-align: center; }
@media (max-width: 760px) {
  .site-language { margin-left: auto; }.site-language > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .site-header .brand { min-width: 0; }.site-header .brand span:last-child { overflow-wrap: anywhere; }
  html:not([lang="en"]) .hero h1, html:not([lang="en"]) .steps-hero h1 { font-size: 34px; }
  html:not([lang="en"]) .success-title-row h1 { font-size: 28px; }
}
