@import url('/assets/common/language.css');
@font-face { font-family: Inter; src: url('/assets/entry/InterVariable-latin.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
* { box-sizing: border-box; }
.document-page { color-scheme: dark; background: #10131a; isolation: isolate; }
.document-page { margin: 0; color: #f4f5f7; font: 400 16px/1.8 Inter, system-ui, sans-serif; overflow-wrap: break-word; }
.document-page::before { content: ''; position: fixed; z-index: -1; inset: 0; background: linear-gradient(180deg, #11162188, #10131ae6 75%), url('/assets/entry/landscape.webp') center top / cover; }
.document-page a { color: inherit; text-decoration: underline; text-underline-offset: 5px; text-decoration-color: #ffffff60; }
.document-page a:hover { text-decoration-color: #fff; }
.document-page :focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.document-header { max-width: 1120px; margin: auto; display: flex; align-items: center; gap: 28px; padding: max(24px, env(safe-area-inset-top)) 32px 20px; }
.document-brand { display: flex; align-items: center; min-height: 44px; }
.document-brand img { display: block; }
.document-page .back-home { display: flex; align-items: center; gap: 12px; min-height: 44px; font-size: 13px; text-decoration: none; }
.document-header .language-switch { margin-left: auto; }
.document-content { max-width: 820px; margin: 38px auto 0; padding: clamp(24px, 5vw, 64px); background: #17202b9e; border: 1px solid #ffffff18; border-radius: 28px; -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.document-page h1 { margin: 0 0 28px; font-size: clamp(32px, 5vw, 52px); font-weight: 500; letter-spacing: -.045em; line-height: 1.13; overflow-wrap: anywhere; }
.document-page h2 { margin: 2.5em 0 .7em; font-size: 22px; font-weight: 500; letter-spacing: -.02em; line-height: 1.3; }
.document-page h3 { margin: 1.7em 0 .45em; font-size: 17px; font-weight: 600; line-height: 1.5; }
.document-page p, .document-page li { color: #dce1e8; }
.document-page p { margin: 0 0 1.1em; }
.document-page li { margin-bottom: .7em; padding-left: .35em; }
.document-page ul { padding-left: 1.2em; }
.document-page .updated { margin-top: -12px; margin-bottom: 32px; font-size: 12px; color: #b4c0cf; }
.contact { margin: 32px 0; padding: 24px; border: 1px solid #ffffff22; border-radius: 16px; background: #ffffff06; }
.contact p:last-child { margin-bottom: 0; }
.contact a { font-weight: 600; }
.document-footer { max-width: 820px; margin: 20px auto 0; padding: 8px 16px max(32px, env(safe-area-inset-bottom)); display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 28px; font-size: 12px; }
.document-footer a { display: flex; align-items: center; min-height: 44px; }
/* Lead paragraph of the sessions catalogue (23 September 2026); its cards are styled by sessions.css. */
.document-page .lead { font-size: 18px; line-height: 1.6; color: #eef1f5; }
[hidden] { display: none !important; }
.document-page section + section:not([hidden]) { margin-top: 64px; }
.document-page section[hidden] + section { margin-top: 0; }
@media (max-width: 880px) { .document-content { margin: 20px 20px 0; } }
@media (max-width: 480px) {
  .document-header { padding-inline: 20px; gap: 16px; }
  .document-brand img { width: 42px; height: auto; }
  .document-page .back-home { gap: 6px; font-size: 11px; line-height: 1.4; }
  .document-content { margin: 8px 12px 0; padding: 28px 22px; border-radius: 20px; }
  .document-page { font-size: 15px; line-height: 1.75; }
  .contact { padding: 18px; }
  .document-page h2 { font-size: 20px; }
}

#document-view { position: fixed; z-index: 10; inset: 0; overflow-y: auto; overscroll-behavior-y: contain; }
