.pro-site { font-family: system-ui, sans-serif; padding-block: 0; }
.pro-site * { font-family: inherit; }
.pro-site .page-wrapper { gap: 32px; padding-top: 24px; }
.language-nav { width: 100%; max-width: 1000px; display: flex; justify-content: flex-end; position: relative; z-index: 5; }
.language-nav details { position: relative; }
.language-nav summary { cursor: pointer; padding: 12px 16px; border: 1px solid #343442; border-radius: 12px; background: #15151d; }
.language-menu { position: absolute; right: 0; top: calc(100% + 8px); width: 230px; padding: 8px; background: #191922; border: 1px solid #343442; border-radius: 14px; box-shadow: 0 12px 40px #0008; }
.language-menu a { display: block; padding: 9px 12px; border-radius: 8px; }
.pro-site a { color: #b8b5ff; text-underline-offset: 3px; }
.language-menu a[aria-current], .language-menu a:hover, .language-grid a:hover { background: #333050; }
.language-selector { margin: 12vh auto; }
.language-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.language-grid a { border: 1px solid #343442; border-radius: 10px; padding: 14px; text-decoration: none; }
.pro-site .app-container { flex-shrink: 0; }
.pro-site #appMessage { margin-top: 16px; color: #fbbf24; line-height: 1.6; }
.pro-site #loaderBlock { text-align: center; padding: 28px 0; color: #b8b5ff; }
.pro-site .footer-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
.pro-site .platform-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(5, auto); grid-auto-flow: column; gap: 10px 20px; }
@media(max-width:600px) { .pro-site .footer-grid { grid-template-columns: 1fr; } }
.pro-site .format-action { white-space: normal; overflow-wrap: anywhere; }
.pro-site .format-details { min-width: 0; }
.pro-site #btnReset { margin-top: 12px; }
.pro-document { line-height: 1.8; }
.pro-document p { margin: 20px 0; }
.pro-document h1 { margin-top: 20px; }
.pro-site a.pro-button { display: block; text-align: center; color: white; text-decoration: none; }
.pro-site :focus-visible { outline: 2px solid #a7a2ff; outline-offset: 4px; }
@media(max-width:600px) { .language-selector { width: calc(100% - 32px); padding: 24px; } .pro-site .app-container { padding: 24px; } .pro-site .footer-grid { gap: 24px; } }

.pro-site .cookie-banner { background: #171820; animation: none; }


/* Keep the language control with the form, without a separate header row. */
.pro-site .page-wrapper { justify-content: flex-start; padding-top: clamp(24px, 7vh, 72px); gap: 48px; }
.pro-site .app-container { margin-block: auto; }
.pro-site .site-footer { margin-top: 0; flex-shrink: 0; }
.language-nav { margin: -12px 0 20px; }
.language-nav summary { display: flex; align-items: center; gap: 8px; list-style: none; font-size: 13px; font-weight: 500; color: #c2c2d1; padding: 8px 10px; border-color: transparent; background: transparent; border-radius: 9px; }
.language-nav summary::-webkit-details-marker { display: none; }
.language-nav summary:hover, .language-nav details[open] summary { background: #ffffff08; border-color: #ffffff12; }
.language-nav summary > span:first-child { display: flex; }
.language-chevron { display: block; flex: 0 0 14px; align-self: center; color: #88889f; margin-left: 3px; transition: transform 150ms ease; }
.language-nav details[open] .language-chevron { transform: rotate(180deg); }
.language-menu { width: 260px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 8px; max-height: min(360px, 65vh); overflow-y: auto; }
.language-menu a { font-size: 13px; text-decoration: none; color: #dbdbe7; padding: 11px 10px; }
.language-menu a[aria-current] { color: #bcb8ff; }
@media(max-width:600px) { .language-nav { margin-top: -8px; margin-bottom: 16px; } .language-menu { width: min(260px, calc(100vw - 64px)); } }

.pro-site .cookie-banner { max-width: 480px; padding: 12px 16px; border-radius: 12px; bottom: 16px; box-shadow: 0 6px 24px #0004; }
.pro-site .cookie-content { flex-direction: row; text-align: left; gap: 16px; }
.pro-site .cookie-content p { margin: 0; font-weight: 400; }
.pro-site .cookie-content p a { font-weight: 400; white-space: nowrap; }
.pro-site .btn-cookie-accept { width: auto; flex-shrink: 0; padding: 8px 16px; border-radius: 8px; box-shadow: none; }
